Linux的script命令――隱藏在終端的記錄器
當(dāng)你在終端或控制臺上工作時,你可能想記錄下自己做了些什么。這種記錄可以看成是保存了終端痕跡的文檔。假設(shè)你跟一些Linux管理員同時在系統(tǒng)上干活。或者說你讓別人遠(yuǎn)程到你的服務(wù)器。你就會想記錄下終端發(fā)生過什么。要實現(xiàn)它,你可以使用script命令。
本文引用地址:http://www.ex-cimer.com/article/201609/304197.htmscript是啥
script是將終端會話制成打印稿的命令。對于想重現(xiàn)終端輸入輸出歷史的人來說,十分管用。而且,這些記錄還能被保存或打印。
如何使用它
一般地,我們可以通過在終端上敲入script來啟動它。
pungki@dev-machine:~$ script
Script started, file is typescript
pungki@dev-machine:~$
還可以指定一個目標(biāo)文件來保存打印稿的結(jié)果。
當(dāng)你再次收到一條命令提示,就說明終端上出現(xiàn)的任何東西,都將被記錄下來。
不指定文件的話,你會看到在當(dāng)前目錄,有了一個叫“typescript”的文件。
為什么要用它
就像之前提到的,script的主要功能是記錄一切。以下是兩個展示其用途的示例場景。
與同事合作
當(dāng)與同事協(xié)同工作時,我們可以使用script來記錄自己的活動。
假設(shè)我們將使用一個叫collaborate的打印稿文件。像這樣的話就輸入:
接著,在干了一下事情之后,假設(shè)你想將你個工作交接給另一個工程師,那就發(fā)送那個文件吧。當(dāng)他想回顧你做的事,只需打開那個文件便可。
如果他想在那個文件的基礎(chǔ)上追加記錄,可以使用-a選項。
記錄他人活動
你可以讓你的工程師或別的什么人遠(yuǎn)程登入到你的系統(tǒng)。為了確認(rèn)他們做對了沒,你可以記錄下他們做了什么。想要script在登錄時就生效,我們可以將其加在shell profile。如果你在使用bash,講一下幾行放進(jìn)profile去吧。
$ vi ~/.profile
# run the script command to record everything
# use -q for quite and -a option to append the script
#
/usr/bin/script -qa /usr/local/script/log_record_script
然后保存。下次他再登錄的時候,script就會自動運行并將記錄追加在/usr/local/script/log_record_script
選項-q是安靜模式。用戶登錄時完全不會察覺到script命令的運行。而選項-a是追加,不會覆蓋以往的記錄。
如果不用-q,用戶登錄時就會因如下畫面而察覺script的存在。
停止記錄
敲擊ctrl+d或exit,可以停止記錄。你會發(fā)現(xiàn)寫入記錄是發(fā)生在停止之后的。
結(jié)論
script命令對于記錄終端歷史還是挺有用的。將記錄保存在文本文件,這樣可以很方便地用任何文本編輯器打開。平時,我們可以使用man script或script -h來更深地挖掘它。
評論