Bash

將 bash 輸出記錄到文件中

  • February 22, 2018

我正在嘗試建構 vlc,它相當複雜並且依賴於安裝正確的軟體包,並且不斷因錯誤而窒息。為了跟踪我的所有步驟,我希望在與 shell 互動時將我正在做的事情輸出到日誌文件中。

根據這個問題的有用答案

通過鍵入以下內容,我得到了提升的提示

(sudo bash) | tee -a vlc_attempt.log

不幸的是,輸出不包括路徑提示,我希望看到它來區分輸入和輸出。

我嘗試將 stderr 管道傳輸到 stdout ,反之亦然,這兩者都會產生錯誤的結果,但沒有在文件中輸入任何內容。嘗試通過管道將 lxterminal 連接到 tee,或者使用 –command= 選項啟動 lxterminal,然後將上述範例命令用引號括起來。然後去哪兒?

用於script(1)記錄發送到終端的所有內容:

$ script
Script started, file is typescript
$ # do your work
...
$ # then exit with ^D
$ exit
Script done, file is typescript

您稍後可以使用以下命令查看輸出less

$ less -r typescript

請注意,日誌將包含發送到終端的所有控製字元,例如 ANSI 顏色或您的 shell 提示發送的任何其他字元。如果您不想在日誌中使用控製字元,那麼可以PS1在執行之前簡化您的操作script,或者使用類似的東西stripansi(1)來清理輸出。

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