关注IT专业技能,持续提升竞争力。

Linux Bash shell中位置参数$#,$*,$@,$0等含义

Linux 仙人球 2360℃ 0评论

$# 是传给脚本的参数个数
$0 是脚本本身的名字
$1 是传递给该shell脚本的第一个参数
$2 是传递给该shell脚本的第二个参数
$@ 是传给脚本的所有参数的列表
$* 是以一个单字符串显示所有向脚本传递的参数,与位置变量不同,参数可超过9个
$$ 是脚本运行的当前进程ID号
$? 是显示最后命令的退出状态,0表示没有错误,其他表示有错误
$- 传递给脚本的falg(使用set 命令)
$_ 保存之前执行的命令的最后一个参数.

退出和返回

退出状态(exit status)

函数返回一个被称为退出状态的值. 退出状态可以由return 来指定statement, 否则函数的退出状态是函数最后一个执行命令的退出状态(0 表示成功,非0 表示出错代码). 退出状态(exit status)可以在脚本中由$? 引用. 这个机制使脚本函数也可以像C 函数一样有一个”返回值” .

return终止一个函数.return 命令[1]可选地带一个整数参数,这个整数作为函数的”返回值”返回给调用此函数的脚本,并且这个值也被赋给变量$?.

例子:

脚本内容如下:

保存退出
赋予脚本执行权限

执行脚本

结果如下:

转载请注明:V-Lover » Linux Bash shell中位置参数$#,$*,$@,$0等含义

喜欢 (1)or分享 (0)
发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址