shell脚本中的$用法
| 变量 | 含义 |
|---|---|
| $0 | shell脚本的文件名 |
| $1 ~ $n |
添加到shell脚本中的各参数; 即执行shell脚本时后跟的内容; 为第1参数, 为第2参数 |
| $? |
shell脚本运行结束时的返回值 成功为0,其他为失败 |
| $$ | shell脚本运行的当前进程的id |
| $! | shell脚本最后运行的后台命令的pid |
| $* |
传递给shell脚本的所有参数 如果用 括起来时,会把所有参数看成一个整体,返回一个字符串 |
| $@ |
不用括起来时,与 功能相同; 用 括起来后,会以 的形式输出所有参数,返回多个字符串 |
| $# | shell脚本的参数个数 |
| $_ | 上一个命令的最后一个参数 |
示例
vim skk.sh
#!/bin/bash
echo '$0' is $0 ##文件名
echo '$1' is $1 ##第1参数
echo '$2' is $2 ##第2参数
echo '$3' is $3 ##第3参数
echo '$*' is $* ##所有参数
echo '$@' is $@ ##所有参数
echo '$!' is $! ##最后运行的后台命令的pid
echo '$#' is $# ##参数个数
echo '$_' is $_ ##上一个命令的最后一个参数
echo '$?' is $? ##运行结束时的返回值

$$
当前进程的id(此处即当前bash的进程id)
"$*"
与
“$@”
"$*"
“$@”
vim sk.sh
#!/bin/bash
echo '$*' is :
for a in "$*" ##输出$*的参数
do
echo ${a}
done
echo "-------------"
echo '$@' is : ##输出$@的参数
for b in "$@"
do
echo ${b}
done
版权声明:本文为S_K15原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。