我運行一個名爲upgrade.sh如何記錄shell腳本的輸出並顯示在屏幕上?
和upgrade.sh腳本調用一個名爲roll.sh
roll.sh >> logfile.text
腳本,但roll.sh有一些問題和提示,並重定向阻止這些產出從擊中屏幕。我無法編輯roll.sh.
我也試過`結果= $(roll.sh)
即使這樣,輸出不會來在屏幕上
我運行一個名爲upgrade.sh如何記錄shell腳本的輸出並顯示在屏幕上?
和upgrade.sh腳本調用一個名爲roll.sh
roll.sh >> logfile.text
腳本,但roll.sh有一些問題和提示,並重定向阻止這些產出從擊中屏幕。我無法編輯roll.sh.
我也試過`結果= $(roll.sh)
即使這樣,輸出不會來在屏幕上
使用tee
,它被用於此目的專門創建:轉發標準輸入到屏幕和一個或多個文件。如果您不想覆蓋它,請確保使用-a
選項附加到logfile.text
。
roll.sh | tee -a logfile.text
你想tee
:
TEE(1) User Commands TEE(1)
NAME
tee - read from standard input and write to standard output and files
我會補充的唯一的事情就是你應該做'''roll.sh 2>&1 | tee -a logfile.txt'''還捕獲錯誤輸出 – 2013-02-17 19:18:18