详解 Shell 脚本中的参数变量

作者: 王炳明 分类: Linux 教程 发布时间: 2021-02-08 15:45 热度:2,132

这篇文章整理了 Shell 脚本中关于参数变量的一些内容

$#   是传给脚本的参数个数
$0   是脚本本身的名字
$1   是传递给该shell脚本的第一个参数
$2   是传递给该shell脚本的第二个参数
$@   是传给脚本的所有参数的列表
$*   是以一个单字符串显示所有向脚本传递的参数,与位置变量不同,参数可超过9个
$?   是显示最后命令的退出状态,0表示没有错误,其他表示有错误

还有一种 $$,可以获取脚本运行的进程ID号,由于这种 $$ 在 WordPress 模板中,好像渲染有问题,所以我单独拿出来。

用一个脚本来解释

# demo.sh
echo "参数个数: #"
echo "脚本文件名:0"
echo "第一个参数: 1"
echo "第二个参数:2"
echo "传递的所有参数: @"
echo "传递的所有参数:*"
echo "上一条命令的退出码: $?"

执行后输出

$ bash demo.sh a b c
参数个数: 3
脚本文件名: demo.sh
第一个参数: a
第二个参数: b
传递的所有参数: a b c
传递的所有参数: a b c
上一条命令的退出码: 0

文章有帮助,请作者喝杯咖啡?