wuaji 发表于 2018-8-22 06:28:43

Bash Shell 位置参数和内部参数

  $0表示当前执行的进程名,script 本身的名字,或者在正则表达式中表示整行输出
  $# ----传递给程序的总的参数数目
  $? ----上一个代码或者shell程序在shell中退出的情况,如果正常退出则返回0,反之为非0值。
  $* ----传递给程序的所有参数组成的字符串。
  $n ----表示第几个参数,$1 表示第一个参数,$2 表示第二个参数 ...
  $0 ----当前程序的名称
  $@----以"参数1" "参数2" ... 形式保存所有参数
  $$ ----本程序的(进程ID号)PID
  $!----上一个命令的PID
  $_ ----保存之前执行的命令的最后一个参数
  # cat test.sh
  #!/bin/bash
  echo "程序的名称是:" $0
  echo "进程的PID:" $$
  echo "第一个参数:" $1
  echo "第二个参数:" $2
  echo "第三个参数:" $3
  echo "传入的参数个数:" $#
  echo "传入的参数为:" "$@"
  echo "传入的参数为:" "$*"
  echo "最后一个参数是:" "$_"
  # sh test.sh 1 2 3
  程序的名称是: test.sh
  进程的PID: 26521
  第一个参数: 1
  第二个参数: 2
  第三个参数: 3
  传入的参数个数: 3
  传入的参数为: 1 2 3
  传入的参数为: 1 2 3
  最后一个参数是: 3

页: [1]
查看完整版本: Bash Shell 位置参数和内部参数