目の前に僕らの道がある

勉強会とか、技術的にはまったことのメモ

エンジニアでもターミナル作業ログを残したい!!

今まで下記のようにexecで標準出力と標準エラー出力を作業ログに残すという事をしてたんですが、実際に打ったコマンドは出力されないので、ちょっと不便だなーと思ってました。

exec > >(tee --append /tmp/$(date +"%Y.%m.%d")_$(id --user).work.log) 2>&1

ちょっと調べて見るとscriptコマンドを使うとコマンドを含めて出力できることを知りました。
これで作業ログを残すのがはかどる!

script --append --flush /tmp/$(date +"%Y.%m.%d")_$(id --user).work.log

チームメンバーにこのログをtailさせておけば、画面共有も出来たりもします。
(その用途ならホントはwemuxとか使った方が良いんでしょうけどね。。

tail -F /tmp/$(date +"%Y.%m.%d")_$(id --user).work.log


ライフチェンジ!



ただし、自分の環境だとscript上でtmux立ち上げるとtmuxのフッターのバーの出力がおかしくなるので、単体windowで実行した方がよさげ。
その辺もう少し、解決できるソリューションが欲しいけど、ひとまずやりたいことができて満足。


追記:
tmuxだとこのやり方が良さそう