[21:23:26 root@c8-3-55 ~]#echo 'echo $lang'
echo $lang
[21:37:14 root@c8-3-55 ~]#echo "echo $lang"
echo zh_cn.utf8
[21:40:47 root@c8-3-55 ~]#echo `echo $lang` ## 單引號內echo和$分別被識別成命令和變數
zh_cn.utf8
[21:41:01 root@c8-3-55 ~]#echo `echo `echo $lang`` ## 巢狀中最內層echo 被識別為命令,但外層echo沒有被識別
echo zh_cn.utf8
[21:41:34 root@c8-3-55 ~]#echo `echo "echo $lang"` ## 內層巢狀雙引號,外層echo 沒有被識別
echo zh_cn.utf8
[21:41:45 root@c8-3-55 ~]#echo `echo 'echo $lang'` ## 內層巢狀單引號,外層echo沒有被識別
echo $lang
[21:41:57 root@c8-3-55 ~]#echo `echo $(echo $lang)` ## 內層巢狀了$()後,外層echo被識別成命令
zh_cn.utf8
放在反向單引號內的一定是命令,否則會報錯
[21:42:12 root@c8-3-55 ~]#echo $(echo 'echo $lang')
echo $lang
[21:42:41 root@c8-3-55 ~]#echo $(echo "echo $lang")
echo zh_cn.utf8
[21:43:06 root@c8-3-55 ~]#echo $(echo `echo $lang`)
zh_cn.utf8
[21:43:18 root@c8-3-55 ~]#echo $(echo $(echo $lang))
zh_cn.utf8
不管內層巢狀的是什麼,$()外層的echo都會被識別。
[21:43:36 root@c8-3-55 ~]#echo `root`
-bash: root: 未找到命令
[21:54:29 root@c8-3-55 ~]#echo `print root`
-bash: print: 未找到命令
[21:54:36 root@c8-3-55 ~]#echo $(root)
-bash: root: 未找到命令
單引號,雙引號,無引號
單引號 所見即所得 雙引號 1 把雙引號的所有內容都輸出出來 2 如果中命令 要反引下 變數 特殊轉義符等,會先把變數 命令 特殊轉義符解析出結果再輸出最終內容。無引號 與雙引號基本相同,連續數字不用加任何引號 建議 指令碼中普通字串盡量雙引號,單純數字可以不用加引號 a 192 a 192 a b...
mysql中反單引號 單引號 雙引號的區別
反引號,一般在esc鍵的下方。它是為了區分mysql的保留字與普通字元而引入的符號。舉個例子 select select from test where select 字段值 在test表中,有個select欄位,如果不用反引號,mysql將把select視為保留字而導致出錯,所以,有mysql保留...
Python 雙引號 單引號 多引號區別
先說1雙引號與3個雙引號的區別,雙引號所表示的字串通常要寫成一行 如 s1 hello,world 如果要寫成多行,那麼就要使用 連行符 吧,如 s2 hello,world s2與s1是一樣的。如果你用3個雙引號的話,就可以直接寫了,如下 s3 hello,world,hahaha.那麼s3實際上...