Linux 下Shell 腳本幾種基本命令替換區(qū)別
Shell 腳本幾種基本命令替換區(qū)別
前言:因為工作需要,需要編寫 shell script 。編寫大量 shell script 時,累計了大量經(jīng)驗,也讓自己開始迷糊幾種函數(shù)輸出調(diào)用的區(qū)別。后面和 LinuxCN 前輩們請教了一下這個問題,大致明白了區(qū)別。這里分享給大家,希望對大家能有所收獲。
`command ` | $(command) | ${command} | $(){command} |
---|---|---|---|
Part 1 : ` command `
這是 “命令標(biāo)準(zhǔn)輸出作為函數(shù)標(biāo)準(zhǔn)輸入” 操作方法之一,有很大的弊端以及不安全的地方。
缺點一:比較陳舊。
缺點二:容易與單引號混淆。(其實它是你鍵盤“!”左邊那個鍵)
Part 1.5 ` command``與 $(command) 倆者區(qū)別
直接看幾張圖吧,看這圖解釋他們區(qū)別...
大家可以看到倆種表達(dá)方式,分別是代表命令直接執(zhí)行和嵌套執(zhí)行。
我們發(fā)現(xiàn):執(zhí)行`` 和 $() 是相同的。