Shell中反引號與 的用法比較

2021-09-19 12:54:47 字數 1098 閱讀 5976

兩者直接的區別, 推薦使用$()代替反引號

1. 單獨呼叫

兩者結果完全一樣。

[root@izwz91rruliuj88pj4zsw0z ~]# echo `pwd`

/root

[root@izwz91rruliuj88pj4zsw0z ~]# echo $(pwd)

/root

2. 巢狀呼叫$()結果正確, 反引號結果不正確

當前目錄:

root@izhtbq9i9lb77uz:/home/dengfei/r# pwd 

/home/dengfei/r

$()鑲嵌結果正確

root@izhtbq9i9lb77uz:/home/dengfei/r# echo $(basename $(pwd))

r

反引號鑲嵌,結果報錯

root@izhtbq9i9lb77uz:/home/dengfei/r# echo `basename `pwd``

basename: missing operand

try 'basename --help' for more information.

pwd

3. 混合鑲嵌兩者都正確

root@izhtbq9i9lb77uz:/home/dengfei/r# echo $(basename `pwd`)

rroot@izhtbq9i9lb77uz:/home/dengfei/r# echo `basename $(pwd)`

r

shell程式設計中, 要用$()取代反引號呼叫系統命令, 以避免不可預知的錯誤.

shell 中的單引號與反引號

我看360的課件有這麼一句話 然後我弄了半天,死活沒復現出來 shell的變數啥的都查過了,就是沒有相關的知識。還特地去糾結會不會跟系統特性有關?然後從ubuntu轉到了centos。一樣不行 最後我剛打算問乙個大佬,突然發現圖一的單引號跟我的不太一樣,然後試著換成鍵盤1前面那個反引號,終於復現了。...

shell指令碼中的反引號,單引號,雙引號與反斜槓

反引號位 經常被忽略,而且容易與單引號弄混。它位於鍵盤的tab鍵的上方 1鍵的左方。單引號 位於enter鍵的左方。在linux中反引號起著命令替換的作用。命令替換是指shell能夠將乙個命令的標準輸出插在乙個命令列中任何位置,將反引號中的字串做為命令來執行,我們在用shell程式設計時經常用的到,...

Shell中的引號,反引號,雙引號,反斜槓

轉貼自 http hi.baidu.com kfeng21 blog item 3b3fcc3fc1bc85f2838b131e.html shell可以識別4種不同型別的引字符號 單引號字元 雙引號字元 反斜槓字元 反引號字元 1.單引號 howard 0 script grep susan ph...