Stdout

在fish shell中列印和記錄stdout和stderr

  • June 25, 2018

我正在使用fishshell 並嘗試將 stdout 和 stderr 記錄到兩個單獨的文件中,並同時在終端中列印它們(例如,通過將每個流管道傳輸到tee)。

bash我會做(見https://stackoverflow.com/a/692407/5082444):

command > >(tee -a stdout.log) 2> >(tee -a stderr.log >&2)

我怎樣才能在fishshell 中實現同樣的效果?

你可以做類似的事情

begin; command | tee -a stdout.log ; end ^| tee -a stderr.log >&2

附帶條件是,如果第一個tee向 stderr 寫入任何內容,它也會被記錄,而 bash 版本不是這種情況。

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