1. 程式人生 > >Linux錄制、回放和共享終端操作

Linux錄制、回放和共享終端操作

演示 pan test fifo 實現 height art dex 1.3

使用script命令錄制,使用scriptreplay播放錄制的操作。共享終端的操作,則需要使用命名管道來實現。

1.1 錄制

[[email protected] ~]# cd /tmp

[[email protected] tmp]# script -t 2> timing.log -a output.session  # 開始錄制
Script started, file is output.session
[[email protected] tmp]# ls                 # 執行一個操作:命令ls
abc.sh  ab.sh  index.html  lost
+found output.session scriptfifo test test1 timing.log vmware-root [[email protected] tmp]# cd /tmp/test # 再執行一個操作:命令cd
[[email protected] test]# exit  # 結束錄制
exit
Script done, file is output.session

其中"-t 2> timing.log"是要回放的必須選項,不加"2>"將導致開啟錄制後的任何輸入都是亂碼狀態,不加"-t timing.log"將不能使用scriptreplay來回放。timing.log記錄的是每個時間段輸入了多少字符。通過timing.log和output.session配合可以實現回放。

註意點是,錄制前保證timing.log和output.session是空文件,否則將導致回放時操作不一致。

1.2 回放

[[email protected] test]# scriptreplay timing.log output.session

1.3 終端屏幕分享

通過管道來傳輸信息實現。需要一個pipe文件,並在需要展示的終端打開這個管道文件。

在終端1(作為主終端,即演示操作的終端)上使用mkfifo創建管道文件。

[[email protected] tmp]# mkfifo scriptfifo

[[email protected] tmp]# ll scriptfifo
prw
-r--r-- 1 root root 0 Sep 26 13:04 scriptfifo # 權限位前面的第一個p代表的就是pipe文件。

技術分享

在終端2上打開pipe文件。

[[email protected] ~]# cat /tmp/scriptfifo

技術分享

在終端1上使用script -f開始記錄操作,之後的操作將會分享在終端2上。

[[email protected] tmp]# script -f scriptfifo

技術分享

技術分享

使用exit即可停止分享並退出記錄行為。

[[email protected] tmp]# exit
exit
Script done, file is scriptfifo

在被分享終端上參與分享狀態後將不能執行任何操作,執行的操作會被記錄下來,並在主終端停止分享後自動執行。

回到系列文章大綱:http://www.cnblogs.com/f-ck-need-u/p/7048359.html

轉載請註明出處:http://www.cnblogs.com/f-ck-need-u/p/7429520.html

註:若您覺得這篇文章還不錯請點擊下右下角的推薦,有了您的支持才能激發作者更大的寫作熱情,非常感謝!

Linux錄制、回放和共享終端操作