- 区分三种定界符
""
:双引号,允许扩展,以$
引用其他变量。''
:单引号,禁用扩展,即便$
也视为普通字符。``
:反引号,将命令的执行输出作为变量值,$()
与反引号效果基本一致,只能放命令,
- 但是两者还是有区别的:反引号本身就对
\
进行了转义,想在反引号中起到\
的特殊意义,必须使用2
个\
来进行表示(例如:\\ = \
),$()
中则不需要考虑\
的问题,与平常使用的一样:\ = \
。
- 举例
// "" 使用 $ echo "$USER id is $UID" dzm id is 501 // '' 使用 $ echo '$USER id is $UID' $USER id is $UID // `` 使用 $ test=`ls -l` $ echo $test total 48 drwxr-xr-x@ 39 dzm staff 1248 12 29 11:32 GitHub drwxr-xr-x@ 7 dzm staff 224 11 29 09:46 MaYun // $() 使用,与 `` 完全等值 $ test=$(ls -l) $ echo $test total 48 drwxr-xr-x@ 39 dzm staff 1248 12 29 11:32 GitHub drwxr-xr-x@ 7 dzm staff 224 11 29 09:46 MaYun