Linux中变量$#,$@,$0,$1,$2,$*,$$,$?的含义

  1. $# 是传给脚本的参数个数shell

  2. $0 是脚本自己的名字spa

  3. $1 是传递给该shell脚本的第一个参数进程

  4. $2 是传递给该shell脚本的第二个参数字符串

  5. $@ 是传给脚本的全部参数的列表it

  6. $* 是以一个单字符串显示全部向脚本传递的参数,与位置变量不一样,参数可超过9个变量

  7. $$ 是脚本运行的当前进程ID号引用

  8. $? 是显示最后命令的退出状态,0表示没有错误,其余表示有错误脚本

相同点:都是引用全部参数co

不一样点:只有在双引号中体现出来。假设在脚本运行时写了三个参数(分别存储在123)则"*" 等价于“123"(传递了一个参数);而“@" 等价于 "$1"、"$2"、"$3"(传递了三个参数)字符

相关文章
相关标签/搜索