Terminal
將所有終端輸出保存到文件中
是否有某種方法可以使用命令將所有終端輸出保存到文件中?
- 我不是在談論重定向
command > file.txt
- 不是歷史
history > file.txt
,我需要完整的終端文本- 不是用熱鍵!
就像是
terminal_text > file.txt
您可以使用
script
. 它基本上會保存該script
會話中終端上列印的所有內容。來自
man script
:script makes a typescript of everything printed on your terminal. It is useful for students who need a hardcopy record of an interactive session as proof of an assignment, as the typescript file can be printed out later with lpr(1).
您只需在終端中輸入即可啟動
script
會話script
,所有後續命令及其輸出都將保存在typescript
目前目錄中命名的文件中。您也可以通過以下方式將結果保存到不同的文件中script
:script output.txt
要註銷
script
會話(停止保存內容),只需鍵入exit
.這是一個例子:
$ script output.txt Script started, file is output.txt $ ls output.txt testfile.txt foo.txt $ exit exit Script done, file is output.txt
現在,如果我閱讀文件:
$ cat output.txt Script started on Mon 20 Apr 2015 08:00:14 AM BDT $ ls output.txt testfile.txt foo.txt $ exit exit Script done on Mon 20 Apr 2015 08:00:21 AM BDT
script
也有許多選項,例如安靜執行-q
(--quiet
)而不顯示/保存程序消息,它也可以執行特定命令-c
(--command
)而不是會話,它還有許多其他選項。檢查man script
以獲得更多想法。