shell脚本中的$默认变量

    有一些内部变量,内部变量是Linux所提供的一种特殊类型的变量,这类变量在程序中用来作出判断。在shell程序内这类变量的值是不能修改的。

    表示方法                        描述
   $n           $1 表示第一个参数,$2 表示第二个参数 ...
   $#           命令行参数的个数
   $0           当前程序的名称
   $?           前一个命令或函数的返回码,返回0代表成功
   $*            以"参数1 参数2 ... " 形式保存所有参数
   $@          以"参数1" "参数2" ... 形式保存所有参数
   $$           本程序的(进程ID号)PID

    我们先写一个简单的脚本,执行以后再解释各个变量的意义 
    # touch variable # vi variable 
    脚本内容如下: 
#!/bin/sh 
echo "number:$#" 
echo "scname:$0" 
echo "first :$1" 
echo "second:$2" 
echo "argume:$@" 
echo "show parm list:$*" 
echo "show process id:$$" 
echo "show precomm stat: $?" 
    保存退出 
  
    赋予脚本执行权限 
    # chmod +x variable 
  
    执行脚本 
    # ./variable aa bb 

    结果如下:
number:2 
scname:./variable 
first:aa 
second:bb 
argume:aa bb 
show parm list:aa bb 
show process id:24544 
show precomm stat:0 
  
    通过显示结果可以看到: 
$# 是传给脚本的参数个数 
$0 是脚本本身的名字 
$1 是传递给该shell脚本的第一个参数 $2 是传递给该shell脚本的第二个参数 
$@ 是传给脚本的所有参数的列表 
$* 是以一个单字符串显示所有向脚本传递的参数,与位置变量不同,参数可超过9个 
$$ 是脚本运行的当前进程ID号 
$? 是显示最后命令的退出状态,0表示没有错误,其他表示有错误 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值