shell 腳本里的命令執行nginx
$( )
與` `
(反引號)都是用來做命令替換的。命令替換與變量替換差很少,都是用來重組命令行的,先完成引號裏的命令行,而後將其結果替換出來,再重組成新的命令行。shell
$( )與``bash
在操做上,這二者都是達到相應的效果,可是建議使用$( ),理由以下:命令行
``很容易與''搞混亂,尤爲對初學者來講,而$( )比較直觀。
最後,$( )的弊端是,並非全部的類unix系統都支持這種方式,但反引號是確定支持的。unix
關於命令嵌套: code
$(ps -ef|grep `ps -ef|grep nginx |grep 'ottcache'|grep 'master process'|awk '{print $2}'` |grep 'worker process'|awk '{print $2}')ast
裏面的命令用 `` 反引號得出 pid, 再替換掉該位置, $() 執行另外一個命令。awk
通常狀況下,$var與${var}是沒有區別的,可是用${ }會比較精確的界定變量名稱的範圍。變量