Linux雙引號、單引號和反向單引號

Linux里的雙引號、單引號和反向單引號有不同的用法,不好記憶,這里總結一下。


單引號''

單引號是一個強引用的符號。什么意思呢?它忽略了所有的特殊符號,比如$、\這樣的符號,單引號里的內容全部看做普通的字符串。

[root@CentOS7 ~]#echo '$PATH'
$PATH
[root@CentOS7 ~]#

可以看到,單引號里面的變量符號$被當做一個普通的字符輸出。

tips:它比較強勢,忽略了所有特殊符號,我們稱之為強引用。


雙引號""

雙引號是一個弱引號的符號,忽略了部分特殊符號,但$、\還保留著特殊含義。

[root@CentOS7 ~]#echo "$PATH"
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

還有一點值得一說的是,默認情況下,如果命令里的變量沒有帶引號,系統會輸出雙引號的結果:

[root@CentOS7 ~]#echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

記憶小tips:雙引號相比單引號的引用要弱,忽略了部分特殊符號,我們稱之為弱引用。


反向單引號``

反向單引號在鍵盤上數字1的左方。它的作用是把引號里面的命令先執行一遍,引號里的命令輸出的結果作為另一個命令的參數。

[root@CentOS6 ~]#echo "I am `whoami` "
I am root 
[root@CentOS6 ~]#

以上面的例子說明:當執行echo "i am whoami "這條命令時,系統會先執行反向單引號whoami這條命令,輸出結果的“root”變成echo的參數。最后變成執行echo “I am root”。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容