管道
管道符我們之前用過,ls -l | more
,如果顯示內容過多,使用more分頁。|
將 ls -l
的執行結果傳遞給 more
,把這個結果當作後邊這個命令的輸入來對待
單獨運行more的時候,相當於是把文件當作more命令的輸入
通過管道符可以組合多種命令,所以我們可以使用cat 文件名 | more
來實現和剛纔一樣的效果cat | ps -f
cat 把文本內容作爲輸入和終端建立連接,這樣文本內容就可以顯示在終端了。ps 是查看進程狀態。管道符給兩邊的命令創建了子進程
可以看到進程cat的輸出位置1是管道符,因爲ps命令執行完已經消失了,所以18706沒有文件或目錄,如果兩個命令都是長期可以執行的,那麼我們可以看到18706的輸入位置0也是同樣的管道符的
因爲是以子進程方式運行的,如果有類似cd,pwd等內建命令,是不會傳遞給父