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


    我们先写一个简单的脚本,执行以后再解释各个变量的意义
     
    # 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表示没有错误,其他表示有错误
     
     
    转自: http://dadekey.blog.51cto.com/107327/119938
  • 相关阅读:
    1755:菲波那契数列
    1788:Pell数列
    3089:爬楼梯
    7832:最接近的分数
    7649:我家的门牌号
    7216:Minecraft
    7213:垃圾炸弹
    2983:谁是你的潜在朋友
    2723:因子问题
    2722:和数
  • 原文地址:https://www.cnblogs.com/pinganzi/p/5307312.html
Copyright © 2020-2023  润新知