<span id="vexk9"><table id="vexk9"></table></span>

      script

      記錄終端會話的所有操作

      補充說明

      script 用于在終端會話中,記錄用戶的所有操作和命令的輸出信息。簡而言之,記錄終端會話發生的一切信息,如同一臺終端錄像機。例如,用戶在輸入某條命令時,字符的鍵入和刪除也都會被記錄。用戶在終端的所有操作、終端的回顯等信息會被以 raw 格式存儲在日志文件,稱為終端數據文件。命令的時間信息會被單獨以另一種結構儲存為日志文件,稱為時間日志文件。使用命令exit或者快捷鍵Ctrl + D停止記錄。

      語法

      script(選項)(參數)
      

      選項

      -a, --append              # 對終端會話的操作信息,以追加方式寫入文件(保留原文件內容)
      -c, --command command     # 只運行 command 命令而不打開交互終端。相當于開啟 script ,執行 command ,再退出 script
                                # command 可以是任意能夠在終端會話執行的命令
      -e, --return              # 返回子進程的退出狀態碼
      -f, --flush               # 每次終端的內容發生變動,立馬寫入日志文件
      --force                   # 允許默認輸出終端數據文件為符號鏈接
      -o, --output-limit size   # 限制終端數據文件和時間日志文件的大小,當文件大小達到此限制就會退出子進程
                                # size 的單位可以設置為:KiB(=1024)、KB(=1000)、MiB(1024*1024)、MB(=1000*1000)
                                # 同理還支持 GiB TiB PiB EiB ZiB YiB GB TB PB EB ZB YB
      -q, --quiet               # 安靜模式。啟動和退出script命令不顯示任何提示
      -t[file], --timing[=file] # 輸出時間日志信息到標準錯誤(stderr)或者文件
      -V, --version             # 顯示版本信息并退出
      -h, --help                # 顯示幫助文本并退出
      

      參數

      實例

      script                             # 開啟記錄,默認會在當前目錄創建名稱為 typescript 的文件來保存終端數據文件
      script command.log                 # 開啟記錄,在當前目錄創建名稱為 command.log 的文件來保存終端數據文件
      script -t 2>time.file command.log  # 開啟記錄,在當前目錄創建名稱為 command.log 的文件來保存終端數據文件
                                         # 在當前目錄創建名稱為 time.file 的文件來保存時間日志文件
      

      以追加模式記錄終端信息

      zfb@localhost:~$ script -t 2>time.file -a -f command.log
      Script started, file is command.log
      zfb@localhost:~$ echo "hello, world"
      hello, world
      zfb@localhost:~$ echo $(date "+%Y-%m-%d %H:%M:%S")
      2020-12-23 20:48:46
      zfb@localhost:~$ echo "Bye"
      Bye
      zfb@localhost:~$ ls -al
      total 20
      drwxr-xr-x  2 zfb zfb 4096 Dec 23 20:48 .
      drwxr-xr-x 37 zfb zfb 4096 Dec 23 20:49 ..
      -rw-r--r--  1 zfb zfb    0 Dec 23 19:03 a.txt
      -rw-r--r--  1 zfb zfb   12 Dec 23 19:04 b.txt
      -rw-r--r--  1 zfb zfb 2744 Dec 23 20:49 command.log
      -rw-r--r--  1 zfb zfb  790 Dec 23 20:49 time.file
      zfb@localhost:~$ exit
      Script done, file is command.log
      zfb@localhost:~$
      

      然后,用戶可以查看終端數據文件,使用方法如下

      zfb@localhost:~$ cat command.log
      Script started on 2020-12-23 20:48:25+08:00 [TERM="xterm-256color" TTY="/dev/pts/0" COLUMNS="75" LINES="30"]
      zfb@localhost:~$ echo "hello, world"
      hello, world
      zfb@localhost:~$ echo $(date "+%Y-%m-%d %H:%M:%S")
      2020-12-23 20:48:46
      zfb@localhost:~$ echo "Bye"
      Bye
      zfb@localhost:~$ ls -al
      total 20
      drwxr-xr-x  2 zfb zfb 4096 Dec 23 20:48 .
      drwxr-xr-x 37 zfb zfb 4096 Dec 23 20:49 ..
      -rw-r--r--  1 zfb zfb    0 Dec 23 19:03 a.txt
      -rw-r--r--  1 zfb zfb   12 Dec 23 19:04 b.txt
      -rw-r--r--  1 zfb zfb 2744 Dec 23 20:49 command.log
      -rw-r--r--  1 zfb zfb  790 Dec 23 20:49 time.file
      zfb@localhost:~$ exit
      
      Script done on 2020-12-23 20:49:04+08:00 [COMMAND_EXIT_CODE="0"]
      zfb@localhost:~$
      

      其中,只有命令cat command.log是用戶輸入,其他均為自動呈現。通過查看上面輸出的時間2020-12-23 20:48:46,可以證明,這是重現的記錄,而非重新執行一遍命令。也就是說,可以把time.filecommand.log文件移動到任意一臺機器上,都可以重現命令輸入與終端回顯。

      記錄服務器用戶會話操作

      root身份編輯文件/etc/profile,在文件末尾追加以下內容

      if [ $UID -ge 0 ]
      then
          exec /usr/bin/script -t 2>/var/log/script-records/$USER-$UID-`date +%Y%m%d`.time -a -f -q /var/log/script-records/$USER-$UID-`date +%Y%m%d`.log
      fi
      

      然后再以root身份創建文件夾用于存儲服務器上的各個用戶在終端的所有操作信息

      sudo mkdir -p /var/log/script-records/
      sudo chmod 733 /var/log/script-records/
      

      最后,執行命令source /etc/profile即可。任意用戶(UID ≥ 0)在終端執行的所有操作都會被安靜地記錄下來,以天為單位存儲。

      主站蜘蛛池模板: 久久婷婷五月综合97色直播| 亚洲国产综合第一精品小说| 久久老色鬼天天综合网观看| 久久亚洲精品成人综合| 99久久婷婷免费国产综合精品 | 久久久久久青草大香综合精品| 丁香亚洲综合五月天婷婷| 中文字幕亚洲综合久久男男| 亚洲五月丁香综合视频| 激情综合色综合久久综合| 91精品婷婷国产综合久久| HEYZO无码综合国产精品| 亚洲综合小说久久另类区| 丁香亚洲综合五月天婷婷| 色综合天天综一个色天天综合网| 狠狠人妻久久久久久综合蜜桃| 五月天综合色激情| 亚洲综合图片小说区热久久| 久久丁香五月天综合网| 东京热TOKYO综合久久精品| 亚洲国产婷婷综合在线精品| 狠狠色丁香久久婷婷综合蜜芽五月| 国产综合免费精品久久久| 亚洲精品第一国产综合精品99| 色婷婷99综合久久久精品| 中文字幕亚洲综合久久综合| 91精品一区二区综合在线| 97se亚洲综合在线| 亚洲国产日韩综合久久精品| 色综合久久无码五十路人妻| 亚洲AV综合色区无码一区爱AV| 亚洲中文字幕无码久久综合网| 久久婷婷色综合一区二区| 中文字幕久久综合| 亚洲国产综合在线| 综合久久久久久中文字幕| 日韩亚洲国产综合久久久| 国产成人亚综合91精品首页| 亚洲综合另类小说色区色噜噜| 狠狠色综合网站久久久久久久高清| 国产综合精品女在线观看|