美文网首页
shell 中的$? 和 [[]]

shell 中的$? 和 [[]]

作者: 归去来ming | 来源:发表于2019-03-04 16:35 被阅读0次

    变量的含义说明:

    $?  

    最后运行的命令的结束代码(返回值)

    $*

    所有参数列表。如"$*"用「"」括起来的情况、以"$1 $2 … $n"的形式输出所有参数。

    $@

    所有参数列表。如"$@"用「"」括起来的情况、以"$1" "$2" … "$n" 的形式输出所有参数。

    $#

    添加到Shell的参数个数

    $0

    Shell本身的文件名

    $1~$n

    添加到Shell的各参数值。$1是第1参数、$2是第2参数…

    $$

    Shell本身的PID(ProcessID)

    双中括号[[]]:

    字符串比较——可以把右边的作为一个模式,而不仅仅是一个字符串,比如[[ hello == hell? ]],结果为真。[[ ]] 中匹配字符串或通配符,不需要引号。

    逻辑运算符——防止脚本许多逻辑错误,比如,&&、||、<和> 操作符能够正常存在于[[

    ]]条件判断结构中,但是如果出现在[ ]结构中的话,会报错。比如可以直接使用if [[ $a != 1 && $a != 2

    ]], 如果不适用双括号, 则为if [ $a -ne 1] && [ $a != 2 ]或者if [ $a -ne 1 -a $a != 2 ]。

    退出码——bash把双中括号中的表达式看作一个单独的元素,并返回一个退出状态码。

    相关文章

      网友评论

          本文标题:shell 中的$? 和 [[]]

          本文链接:https://www.haomeiwen.com/subject/qouiuqtx.html