跳转到主要内容

Bash Shell 特殊用法笔记

有些特殊用法老是记不住,随便记录一下。
是各处搜集来的,就不好好排版了。


特殊变量
变量和描述

$0

当前脚本的文件名。

$n

这些变量对应于调用脚本的参数。这里 n 是对应于参数位置的正十进制数(第一个参数是 $1,第二个参数是 $2,依此类推)。

$#

提供给脚本的参数数量。

$*

所有参数都被双引号引起来。如果脚本接收两个参数,则 $* 等价于 $1 $2。

$@

所有参数都单独双引号。如果脚本接收两个参数,则 $@ 等价于 $1 $2。

$?

最后执行的命令的退出状态。

0 成功,1 不成功。但有些程序也会根据不成功的种类返回其他值,均代表不成功。

$$

当前shell的进程号。对于 shell 脚本,这是它们正在执行的进程 ID。

$!

最后一个后台命令的进程号。

 $((运算式))
可用于整数数学计算,如 $((100*3/2)) 输出 150, $(( (1+2)*3/2 )) 输出 4,$(( 100%3 )) 输出 1,$(( 10**3 )) 输出 1000。

双括号是 bash 本身的功能,和 $ 没有关系。





部分参考