linux的script命令
linux的script命令
script命令能夠將終端的會話過程錄制下來,下面由學習啦小編為大家整理了linux的script命令的相關知識,希望對大家有幫助!
linux的script命令
script 是一個神奇命令,script 能夠將終端的會話過程錄制下來,然后使用 scriptreplay 就可以將其錄制的結果播放給他人觀看。script 的好處就在于你在終端中的所有操作、敲過的命令和打印出的結果它都可以原原本本地進行錄制??梢詰糜诮虒W、演示、審計。
一般來說,script 和 scriptreplay 在 Linux 發(fā)行版中都有默認安裝。
script -t 2>demo.time -a demo.his 開始錄像,ctrl+d或者exit結束
scriptreplay demo.time demo.his 回放
兩個配置文件被當做script命令的參數(shù)。這兩個文件可以隨便命名,這里用demo.time和demo.his。其中demo.time用于存儲時序信息,描述每一個指令在何時運行;demo.his用于存儲命令信息輸出。-t選項用于將時序數(shù)據(jù)導入stderr。2>用于stderr重定向到demo.time。
參數(shù):
-t 指明輸出錄制的時間數(shù)據(jù)
-f 如果需要在輸出到日志文件的同時,也可以查看日志文件的內容,可以使用 -f 參數(shù)。PS:可以用于教學,兩個命令行接-f可以實時演示
-a 輸出錄制的文件,在現(xiàn)有內容上追加新的內容
-q 可以使script命令以靜默模式運行
利用script記錄某人行為
vi ~/.profile
script -t -f -q 2>$USER.time -a $USER.his
linux的scripy命令應用
1、演示教學
第一個命令框
script -f demo
其他命令框
scriptreplay -f demo
可以實現(xiàn)實時同步演示
2、服務器安全審計
直接操作線上的服務器有很大隱患,所以一般都是通過登錄跳板機,然后連接線上服務器,跳板機可以訪問控制和安全審計,查看記錄每個人對線上服務器的操作
用戶家目錄下,修改環(huán)境變量,使得用戶登錄就會觸發(fā)錄像
vi ~/.profile
script -t -f -q 2>/wow/$USER-$UID-`date +%Y%m%d%H%M%S`.time -a /wow/$USER-$UID-`date +%Y%m%d%H%M%S`.his
這樣搞完后,發(fā)現(xiàn)有一個問題是每次退出,我習慣Ctrl+D,然后按第一遍停止錄像,第二遍才能用戶退出,如何解決在后面添加
if [ "$SHLVL" = 1 ]; then
exit
fi
這樣就可以一遍Ctrl+D停止錄像和退出用戶。
必須得時許信息在前,命令信息在后。