#はじめに
Windows環境でTeraTermみたいな操作ログをPowerShellでも取得したいと思い立って記事を書いたものの、WindowsならWSL(Windows Subusystem for Linux)だよねということで、WSLのUbuntuでのターミナルのログ出力設定(自動)について記載します。
#TL;DR
内容はscriptコマンド使うだけ・・・
#環境
Windows:Windows10 Ent v1803
Ubuntu:Ubuntu 16.04.3 LTS
#自動でログを取得する方法
Ubuntuを起動し、~/.profileファイルに下記を追記する
script -f <ディレクトリ>/$(date +%Y%m%d%H%M%S).log
出力先ディレクトリはやはりWindowsなのでマイドキュメントに書き出したく、その場合は次のように記載。参考[1]
script -f /mnt/c/Users/<ユーザー名>/Documents/$(date +%Y%m%d%H%M%S).log
#試してみると
なんだか読みづらい
]0;user@DESKTOP-3GQ2JQM: ~[01;32muser@DESKTOP-3GQ2JQM[00m:[01;34m~[00m$ ls -la
total 24
drwxr-xr-x 1 user user 512 Oct 2 18:04 [0m[01;34m.[0m
drwxr-xr-x 1 root root 512 Jan 31 2018 [01;34m..[0m
-rw------- 1 user user 10960 Oct 2 17:59 .bash_history
-rw-r--r-- 1 user user 220 Jan 31 2018 .bash_logout
-rw-r--r-- 1 user user 3771 Jan 31 2018 .bashrc
drwx------ 1 user user 512 Jun 4 17:43 [01;34m.cache[0m
実際のターミナル上の表示はこちら。
user@DESKTOP-3GQ2JQM:~$ ls -la
total 24
drwxr-xr-x 1 user user 512 Oct 2 18:04 .
drwxr-xr-x 1 root root 512 Jan 31 2018 ..
-rw------- 1 user user 10960 Oct 2 17:59 .bash_history
-rw-r--r-- 1 user user 220 Jan 31 2018 .bash_logout
-rw-r--r-- 1 user user 3771 Jan 31 2018 .bashrc
drwx------ 1 user user 512 Jun 4 17:43 .cache
-rw-r--r-- 1 user user 727 Oct 2 17:59 .profile
drwx------ 1 user user 512 Oct 2 18:04 .ssh
-rw-r--r-- 1 user user 0 Apr 17 16:23 .sudo_as_admin_successful
-rw-rw-rw- 1 user user 0 Oct 2 18:04 test.dat
-rw------- 1 user user 3879 Oct 2 18:04 .viminfo
どうもscriptコマンドだとしょうがないらしい。
対応として、簡単なのが-rオプションをつけることが良さそう[2]。
lessの-rや-Rオプションで開く
-rオプションをつけて表示した結果、
$ less -r 20181002175946.log
user@DESKTOP-3GQ2JQM:~$ ls -la
total 24
drwxr-xr-x 1 user user 512 Oct 2 18:04 .
drwxr-xr-x 1 root root 512 Jan 31 2018 ..
-rw------- 1 user user 10960 Oct 2 17:59 .bash_history
-rw-r--r-- 1 user user 220 Jan 31 2018 .bash_logout
-rw-r--r-- 1 user user 3771 Jan 31 2018 .bashrc
drwx------ 1 user user 512 Jun 4 17:43 .cache
-rw-r--r-- 1 user user 727 Oct 2 17:59 .profile
drwx------ 1 user user 512 Oct 2 18:04 .ssh
-rw-r--r-- 1 user user 0 Apr 17 16:23 .sudo_as_admin_successful
-rw-rw-rw- 1 user user 0 Oct 2 18:04 test.dat
-rw------- 1 user user 3879 Oct 2 18:04 .viminfo
user@DESKTOP-3GQ2JQM:~$
(END)
これで見やすくなりました。
でもC:\配下に出力させる意味がなくなってしまった。。
目的はWindowsのテキストエディタで気軽にログを確認できるようにしたかったのだが。。
良い方法が見つかったら追記します。
#参考
[1]まずはここから!Linuxサーバでカジュアルに作業ログを取得する方法
[2]scriptなどでログを取るときに変な文字(制御文字)のない状態で読めるようにする