zoukankan      html  css  js  c++  java
  • Linux脚本中$#、$0、$1、$@、$*、$$、$?

    1.首先介绍一下这个几个参数的意义:

      $#:传入脚本的参数个数;

      $0:  脚本自身的名称;  

      $1:  传入脚本的第一个参数;

      $2:  传入脚本的第二个参数;

      $@: 传入脚本的所有参数;

      $*:传入脚本的所有参数;

      $$:  脚本执行的进程id;

      $?:  上一条命令执行后的状态,结果为0表示执行正常,结果为1表示执行异常;

        其中$@与$*正常情况下一样,当在脚本中将$*加上双引号作为“$*”引用时,此时将输入的所有参数当做一个整体字符串对待。比如输入参数有a b c三个参数,则“$*”表示“a b c”一个字符串。

    2.测试

      测试脚本test.sh

    #!/bin/bash
    echo "脚本名称: $0"
    echo "第一个参数: $1"
    echo "第二个参数: $2"
    echo "参数个数: $#"
    echo "输入的参数:$*"
    for key in $*
    do
        echo $key;
    done
    for key in "$*"
     do
        echo $key
    done
    
    echo "输入的参数:$@"
    for key in $@
     do
        echo $key;
    done
    for key in "$@"
     do
        echo $key;
    done
    echo "进程id: $$"
    echo "状态: $?"

    3.执行脚本

      sh test.sh a b

    脚本名称: test.sh
    第一个参数: a
    第二个参数: b
    参数个数: 2
    输入的参数:a b
    a
    b
    a b
    输入的参数:a b
    a
    b
    a
    b
    进程id: 8682
    状态: 0
  • 相关阅读:
    NOIP提高组2004 合并果子题解
    RMQ问题之ST算法
    7.18考试
    7.18
    7.17
    7.16
    7.15
    7.14
    7.13考试
    7.13
  • 原文地址:https://www.cnblogs.com/xzlive/p/12929834.html
Copyright © 2011-2022 走看看