script 和 scriptreplay兩個命令在 Linux 發行版中都有默認安裝。shell
# script -t 2> time.file -a scriptfile time.file是時序記錄文件,記錄了幾秒執行的命令; scriptfile是命令執行記錄文件,記錄下執行是哪些命令,這兩個文件名稱均可以自定義。
# script -q -t 2> time.file -a scriptfile -q, - -quiet 參數能夠使script命令以靜默模式運行,不顯示script啓動和exit的命令,用戶能夠徹底察覺不到在錄屏。 按下按下組合鍵 Ctrl+D 結束錄製,執行exit命令也行。
# scriptreplay -d 10 time.file scriptfile 添加這個參數-d, –divisor number 能夠調整播放速度的倍數(能夠是小數:放慢)。 scriptfile文件記錄了我每間隔1秒執行一個date命令的操做,如今加速10倍來播放看看效果(惋惜有的版本scriptreplay命令沒有-d這個參數)。
使用端: # script -f demo -f, - -flush 每次操做後都當即刷新緩存。若是不設置這個選項,則不會實時寫入文件,這個功能
演示端:
# scriptreplay -f demo
# script -qa "file.out" -c "/root/hello.sh" # cat file.out -c, - -command 能夠直接執行命令,而非是交互式的shell,能夠直接傳入一個腳本
# mkdir -p /var/log/user_record # vi /etc/profile # 在/etc/prifile文件追加登錄時自動記錄 script -t -f -q 2>/var/log/user_record/$USER-$UID-`date +%Y%m%d%H%M%S`.time -a /var/log/user_record/$USER-$UID-`date +%Y%m%d%H%M%S`.his if [ "$SHLVL" = 1 ]; then exit fi
if [ $UID -ge 0 ]; then exec /usr/bin/script -t 2>/var/log/script/$USER-$UID-`date +%Y%m%d%H%M`.date -a -f -q /var/log/script/$USER-$UID-`date +%Y%m%d%H%M`.log fi