SHELL 中的内置变量

 Technique  comment

许久不写 Shell,很多知识都遗忘了,趁机捡捡。

内置变量

$0: 脚本本身文件名称
$1: 命令行第一个参数,$2为第二个,以此类推
$*: 所有参数列表
$@: 所有参数列表
$#: 参数个数
$$: 脚本运行时的PID
$?: 脚本退出码

区别

$@$* 区别

例如执行 test.sh 1 2 3

$* 表示 "1 2 3"
$@ 表示 "1" "2" "3"

二者没有被引号括起来时是一样的都为 "1 2 3",只有当被引号括起来后才表现出差异。

附录

参考链接

回复