天天看点

linux下命令行对引号的解析

在linux命令行中,有三对特殊的引号:

[list]

[*]倒单引号``

[*]双引号""

[*]单引号''

[/list]所有字符都是在英文输入状态下输入。如果现在的工作目录是/home/user,环境变量PATH=/bin:/usr/bin,当前shell的环境变量中没有VAR_NAME

echo pwd
#输出pwd

echo `pwd`
#输出/home/user

echo "$PATH"
#输出/bin:/usr/bin

echo '$PATH'
#输出$PATH

echo "$VAR_NAME/lib:$PATH"
#输出/lib:/bin:/usr/bin

echo '$VAR_NAME/lib:$PATH'
#输出$VAR_NAME/lib:$PATH

echo '$VAR_NAME/lib:'"$PATH"
#输出$VAR_NAME/lib:/bin:/usr/bin
           

总结:

[list]

[*]倒单引号``

`要执行的名`

`是键盘上TAB键上方的那个键。

[*]双引号""

"对变量会解析的字符串"

如果字符串中包含$VAR_NAME之类的串,这个串将会被环境变量中的相应值取代,如果环境变量中没有相应的变量则用空字符串替代。

[*]单引号''

'常量字符串'

串中的所有字符原样保持不变

[/list]

继续阅读