管線命令在 bash 的連續處理程式中是相當重要的!另外,在 log file 的分析當中也是相當重要的一環, 所以請特別留意!另外,在管線命令當中,常常會使用到前乙個命令的 stdout 作為這次的 stdin , 某些命令需要用到檔名 (例如 tar) 來進行處理時,該 stdin 與 stdout 可以利用減號 "-" 來替代, 舉例來說:
[root@www ~]# tar -cvf - /home | tar -xvf -
上面這個例子是說:『我將 /home 裡面的檔案給他打包,但打包的資料不是紀錄到檔案,而是傳送到 stdout; 經過管線後,將 tar -cvf - /home 傳送給後面的 tar -xvf - 』。後面的這個 - 則是取用前乙個命令的 stdout, 因此,我們就不需要使用 file 了!這是很常見的例子喔!注意注意!
參考資料:
Linux 命令列的管道中減號」 」的用途
tar 是unix linux下的打包器。cvf可以看做 c v f,xvf則是 x v f。其中 c x分別表示create extract,即打包 解包。v 是verbose,表示顯示打包 解包的詳細過程。f 表示file,表示打包輸出 解包輸入檔案,後面跟 表示使用 標準輸入 輸出 stdin...
關於 dev null及用途
把 dev null 看作 黑洞 它非常等價於乙個只寫檔案.所有寫入它的內容都會永遠丟失.而嘗試從它那兒讀取內容則什麼也讀不到.然而,dev null 對命令列和指令碼都非常的有用.禁止標準輸出 1 cat filename dev null 2 檔案內容丟失,而不會輸出到標準輸出.禁止標準錯誤 1...
關於 dev null及用途
把 dev null 看作 黑洞 它非常等價於乙個只寫檔案.所有寫入它的內容都會永遠丟失.而嘗試從它那兒讀取內容則什麼也讀不到.然而,dev null 對命令列和指令碼都非常的有用.禁止標準輸出 1 cat filename dev null 2 檔案內容丟失,而不會輸出到標準輸出.禁止標準錯誤 1...