shell script笔记_单引号、双引号、反引号

问:为什么要用引号?
答:变量值出现空格时,比如 name=xiao ming 这样执行就会出现问题,而必须用引号括起来,比如 name=“xiao ming”。

反引号
` 是反引号是在ESC键下面的,反引号代表引用linux的命令。为了防止混淆或 POSIX 规范的角度来说,尽量使用 $(命令) 的方式来引用linux命令的输出,而不要使用反引号。

下面2行输出结果是一样的
echo $(date)
echo `date`
下面2行输出结果是一样的
echo $(expr 1 + 1)
echo `expr 1 + 1`

单引号
被单引号括起来的字符都是普通字符,就算特殊字符也不再有特殊含义;

双引号
被双引号括起来的字符中,$、\、反引号 有特殊含义。
$代表引用变量值,\代表转义字符,反引号代表引用linux的命令。

其实在shell中 echo的参数-e能够解析转义字符,在单引或者双引的情况下都能够解析。
-e 启用下列反斜杠转义的解释

echo 'a\nb'    #结果是a\nb

echo -e 'a\nb'   
运行结果是: 
a
b
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章