Bash

wget 一個文件,記錄輸出並在提示時顯示輸出

  • June 10, 2018

在 bash 腳本中,我必須從網上下載一個文件。我使用wget命令來執行此操作。我想記錄wget命令的輸出,並“同時”在終端上提示輸出。

我在man wget沒有找到實現這一目標的方法的情況下進行了搜尋。

似乎如果您使用-oor-a參數打開日誌,那麼提示輸出會自動“重定向”到日誌文件,並且在執行腳本時終端上不會顯示任何內容,直到它完成下載。

wget -a wget_log –no-check-certificate –auth-no-challenge –http-user= $ jen_uname –http-password= $ jen_psswd link_to_the_file

有可能兩者都做嗎?提示輸出並寫入日誌文件?

您可以使用可愛的tee命令來執行此操作:

wget --no-check-certificate --auth-no-challenge --http-user=$jen_uname --http-password=$jen_psswd 2>&1 | tee -a wget_log

這意味著STDERR2>&1與 STDOUT 位於同一位置,並且它們都通過管道傳輸到tee. -a手段附加。tee然後將輸出發送到 wget_log 和 STDOUT。

引用自:https://unix.stackexchange.com/questions/128474