zoukankan      html  css  js  c++  java
  • linux --> Linux变量之$#, $*, $@含义

    Linux变量之$#, $*, $@含义

    一、介绍

    $#   //是传给脚本的参数个数
    $0   //是脚本本身的名字
    $1   //是传递给该shell脚本的第一个参数
    $2   //是传递给该shell脚本的第二个参数
    $@   //是传给脚本的所有参数的列表
    $*   //是以一个单字符串显示所有向脚本传递的参数,与位置变量不同,参数可超过9个
    $$   //是脚本运行的当前进程ID号
    $?   //是显示最后命令的退出状态,0表示没有错误,其他表示有错误
    $!   //Shell最后运行的后台Process的PID 
    ‘@’ 和 ‘*’ 的区别:
      相同点:都是引用所有参数。
      不同点:只有在双引号中体现出来。假设在脚本运行时写了三个参数(分别存储在1 2 3)则"*" 等价于 “1 2 3"(传递了一个参数);而“@" 等价于 1” "2” "3"(传递了三个参数)。
     

    二、示例

    ##dels.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: $?"

    执行结果:

    [@jihite]$ sh del.sh 1 2 3
    number:3
    scname:del.sh
    first: 1
    second:2
    argume:1 2 3
    show parm list:1 2 3
    show process id:21057
    show precomm stat: 0
  • 相关阅读:
    单件模式 Singleton---Design Pattern 5
    Web请求中同步与异步的区别
    zepto和jquery的区别,zepto的不同使用8条小结
    zepto判断左右滑动
    移动web终端交互优化
    Flexbox
    设计移动web
    viewport
    Pixel移动开发像素知识
    获取元素的left值
  • 原文地址:https://www.cnblogs.com/jeakeven/p/5383080.html
Copyright © 2011-2022 走看看