LoginSignup
7
5

More than 5 years have passed since last update.

Windows Subsystem for LinuxのUbuntuターミナルログの自動取得

Last updated at Posted at 2018-10-02

はじめに

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ファイルに下記を追記する

~/.profile
script -f <ディレクトリ>/$(date +%Y%m%d%H%M%S).log

出力先ディレクトリはやはりWindowsなのでマイドキュメントに書き出したく、その場合は次のように記載。参考[1]

~/.profile
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:\配下に出力させる意味がなくなってしまった。。 :cold_sweat:

目的はWindowsのテキストエディタで気軽にログを確認できるようにしたかったのだが。。

良い方法が見つかったら追記します。

参考

[1]まずはここから!Linuxサーバでカジュアルに作業ログを取得する方法
[2]scriptなどでログを取るときに変な文字(制御文字)のない状態で読めるようにする

7
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
5