当前位置:  操作系统/服务器>linux

Shell 函数参数

    来源: 互联网  发布时间:2014-10-17

    本文导语:  在shell中,调用函数时可以向其传递参数。在函数体内部,通过 $n 的形式来获取参数的值,例如,$1表示第一个参数,$2表示第二个参数... 带参数的函数示例: #!/bin/bash funWithParam(){ echo "The value of the first parameter is $1 !" ec...

在shell中,调用函数时可以向其传递参数。在函数体内部,通过 $n 的形式来获取参数的值,例如,$1表示第一个参数,$2表示第二个参数...

带参数的函数示例:

#!/bin/bash
funWithParam(){
  echo "The value of the first parameter is $1 !"
  echo "The value of the second parameter is $2 !"
  echo "The value of the tenth parameter is $10 !"
  echo "The value of the tenth parameter is ${10} !"
  echo "The value of the eleventh parameter is ${11} !"
  echo "The amount of the parameters is $# !"
  echo "The string of the parameters is $* !"
}
funWithParam 1 2 3 4 5 6 7 8 9 34 73

输出:

The value of the first parameter is 1 !
The value of the second parameter is 2 !
The value of the tenth parameter is 10 !
The value of the tenth parameter is 34 !
The value of the eleventh parameter is 73 !
The amount of the parameters is 12 !
The string of the parameters is 1 2 3 4 5 6 7 8 9 34 73 !"

注意,$10 不能获取第十个参数,获取第十个参数需要${10}。当n>=10时,需要使用${n}来获取参数。

另外,还有几个特殊字符用来处理参数:

参数处理 说明 $# 传递到脚本的参数个数 $* 以一个单字符串显示所有向脚本传递的参数 $$ 脚本运行的当前进程ID号 $! 后台运行的最后一个进程的ID号 $@ 与$#相同,但是使用时加引号,并在引号中返回每个参数。 $- 显示Shell使用的当前选项,与set命令功能相同。 $? 显示最后命令的退出状态。0表示没有错误,其他任何值表明有错误。

    
 
 

您可能感兴趣的文章:

  • shell 函数中的用exit时,什么情况下仅仅退出函数,什么情况下退出整个shell程序?
  • shell脚本如何调用另外一个shell脚本的函数?
  • 很菜,shell脚本中怎么写函数,怎么使用带参数的函数???
  • shell函数如何load?
  • 急:unix的shell脚本中,定义了一个函数getDate(),在后面的执行命令参数用要使用这个函数的返回值,应该怎么写?
  • shell脚本里的函数怎么调用??
  • shell函数如何返回字符串
  • 有关在makefile中使用shell函数的问题
  • shell获取main函数的返回值
  • 求救!makefile 中shell函数
  • shell函数求救
  • shell中函数的使用
  • shell内能不能写入函数?
  • PHP中exec函数和shell_exec函数的区别
  • Unix下System函数实现中为何要使用shell去调用执行程序?
  • 函数调用Shell命令问题
  • shell 函数返回值
  • shell 编程:写一个功能函数,打印根目录下所有文件大小
  • 很菜的,能否在我的C函数里调用SHELL吗?
  • linux下system函数调用shell命令后,怎样让主进程不等子进程返回,接着执行(在线)?
  • 问一个关于在shell中调用内置命令时参数的问题?参数从空格处被断开
  • shell 参数数目不固定如何遍历(主要原因是包含带空格的参数)
  • 各位Shell高人,如何取得Shell的第10个入口参数?$10不行啊,急!
  • 一个shell执行另一个带参数shell脚本????????????
  • shell参数问题 if [ x$current == x$required ]; 中参数前的x是什么意思
  • C调用shell时,能否给shell传递参数
  • shell创建一个带参数的文件名,这个参数怎么不显示出来backup$BDATE.dump
  • unix shell 下进程的命令行参数与源程序 main函数的入口参数 是同一回事吗? 第一次编 .sh 文件,哪一位肯帮忙?
  • 请问 怎么样在C中调用一个 shell,得到shell中一个参数的值
  • linux的shell的参数个数限制
  • shell脚本执行echo显示参数问题
  •  
    本站(WWW.169IT.COM)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.169IT.COM)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • Centos6下安装Shell下文件上传下载rz,sz命令
  • 不同类型的shell*(K SHELL , C SHELL) 用命令怎么切换?
  • linux bash shell命令:grep文本搜索工具简介
  • 我在执行shell时,想在shell里直接向mysql数据库插入数据,我该如何写shell。
  • Linux下指定运行时加载动态库路径及shell下执行程序默认路径
  • 菜鸟问问题:shell是什么呢?普通的ls、cp、pwd这些命令算不算shell呢?如何把自己写的文件变成shell呢?
  • linux bash shell命令:文本搜索工具grep中用于egrep和 grep -E的元字符扩展集
  • 傻瓜问题,请问shell编程和shell脚本编程的关系
  • linux bash shell命令:文本搜索工具Grep命令选项及实例
  • shell变量和子shell的问题请教
  • linux bash shell命令:文本搜索工具grep正则表达式元字符集(基本集)
  • 请问“当前shell”和“子shell”的区别?
  • 怎么知道当前是B_SHELL 还是C_SHELL
  • 用户登陆后运行某SHELL退出SHELL就回到LOGIN是怎么作到的?
  • 怎么写shell代码 写好shell怎么运行?
  • 请问一个shell中如何获取这个shell自身抛出的错误?
  • 非登录shell是什么 意思,和登录shell有什么区别啊
  • Solaris 8中修改root的shell为一个非法的Shell后怎么办?
  • shell 编程 执行shell新建多个终端 并执行程序
  • 如何在一台机器上的shell中执行另外一台机器上的shell
  • 在shell中的交互问题,现在需要在shell结束时按某键或任意键


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2017,169IT.COM,E-mail:www_169it_com#163.com(请将#改为@)

    浙ICP备11055608号