2021年7月31日土曜日

scriptでUnix ターミナルの表示全てを保存する

script コマンドで、terminalの表示を逐一保存することができます。
$ script outputfile.txt

で出力ファイルを決めてスタート。
$ exit

するまで続きます。


出力を見てみると、PS1で設定したフォントの部分がそのまま出て文字化けか?と思ってしまいました。

この出力はターミナルのフォントの部分で、同じターミナルで読むときは問題ないですが、他のエディタなどで読むには辛いので消したいです。置換、削除するとスッキリします。

置換する
月 -> 月

削除する
\[01;3\dm
\[0m
\[00m
\]0;
~

---

Script started on 2021-07-31 14:54:50+09:00 [TERM="screen-256color" TTY="/dev/pts/3" COLUMNS="151" LINES="51"]
<user>@<client>:~$ script --help

Usage:
 script [options] [file]

Make a typescript of a terminal session.

Options:
 -a, --append                  append the output
 -c, --command        run command rather than interactive shell
 -e, --return                  return exit code of the child process
 -f, --flush                   run flush after each write
     --force                   use output file even when it is a link
 -o, --output-limit      terminate if output files exceed size
 -q, --quiet                   be quiet
 -t[], --timing[=] output timing data to stderr or to FILE
 -h, --help                    display this help
 -V, --version                 display version

For more details see script(1).
<user>@<client>:~$ exit
exit

Script done on 2021-07-31 14:54:59+09:00 [COMMAND_EXIT_CODE="0"]

実際のターミナルのスクリーショットはこんな感じでした。分かり難いですが元の色が設定されています。
参考 https://unix.stackexchange.com/questions/200637/save-all-the-terminal-output-to-a-file

0 件のコメント:

コメントを投稿