您现在的位置:爱折腾>> Linux>>正文内容

linux variables $#,$@,$0,$1,$2,$*,$$,$?

了解之前,我们先看下面的shell脚本:

  1. #!/bin/sh  
  2. echo "number:$#"  
  3. echo "scname:$0"  
  4. echo "first :$1"  
  5. echo "second:$2"  
  6. echo "argume:$@"  
  7. echo "show parm list:$*"  
  8. echo "show process id:$$"  
  9. echo "show precomm stat: $?" 

执行:

  1.  sh variable.sh 1 2 3 4 5 6 7 8 9  
  2. number:9  
  3. scname:variable.sh  
  4. first :1  
  5. second:2  
  6. argume:1 2 3 4 5 6 7 8 9  
  7. show parm list:1 2 3 4 5 6 7 8 9  
  8. show process id:19939  
  9. show precomm stat: 0 

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

相关文章