Bash
使用 tee 將中間結果輸出到標準輸出而不是文件
我知道要在處理的中間階段擷取管道的內容,我們使用 tee as
ls /bin /usr/bin | sort | uniq | tee abc.txt | grep out
,但是如果我不想將uniq 之後的內容重定向到 abc.txt 而是 螢幕(通過標準輸出,當然)這樣最終結果,我將在螢幕上顯示 uniq 之後的中間內容以及 grep 之後的內容。
有時 /dev/tty 可以用於…
ls /bin /usr/bin | sort | uniq | tee /dev/tty | grep out | wc
ls /bin /usr/bin | sort | uniq | tee /dev/fd/2 | grep out | wc
在 linux 系統上,您可以
/dev/fd/[num]
在許多情況下使用命名管道之類的連結。這會將 stdout 複製到 stderr,這通常是您的終端螢幕,但不需要。