2013-05-28 34 views
2

在終端中,有時我想顯示標準輸出並將其另存爲備份。但如果我使用重定向(>&>等),它不會在終端中顯示輸出。Bash標準輸出同時顯示和重定向

我想我可以做例如ls > localbackup.txt | cat localbackup.txt。但它感覺不對。有沒有什麼捷徑可以實現這個目標?

謝謝!

回答

6

tee是你正在尋找的命令:

ls | tee localbackup.txt 
+0

謝謝!就是這個! – Yoland

+0

@YolandYan接受正確答案也是一種感謝某人的幫助的方式。 – msw

2

除了使用tee複製的輸出(和它的值得一提的tee能夠追加到文件,而不是覆蓋它,通過使用tee -a,這樣就可以按順序運行幾個命令和保留所有的輸出),則也可以使用tail -f「追隨」從並行處理的輸出文件(例如一個單獨的終端):

command1 >localbackup.txt # create output file 
command2 >>localbackup.txt # append to output 

並從一個單獨的終端,在同一時間:

tail -f localbackup.txt # this will keep outputting as text is appended to the file 
+0

+1 for'tail -f'! – lenz