Atsushi2022の日記

データエンジニアリングに関連する記事を投稿してます

【Linux Tips】コマンドの実行結果を日時文字列ファイルに出力

コマンドの出力結果を日時文字列ファイルに出力するのが面倒だったので、エイリアスを登録して省力化する。

エイリアスの設定

$ alias logd='touch log.`date +%Y%m%d%H%M%S` && ls log.`date +%Y%m%d%H%M%S`'

↑のエイリアスは、日時文字列ファイルをtouchで作成してlsでファイル名を返す。(もっとシンプルな記述方法があればぜひ教えてください)

ファイル名は「log.20231210015944」という形式。

使い方

次のようにして使用する。コマンドの実行結果をパイプでteeに流してコマンドの実行結果を表示させつつファイル(log.YYYYmmddHHMMSS)に書き込む。

$ [コマンド] | tee $(logd)

これまでのやり方

$ [コマンド] | tee log.$(date +%Y%m%d%H%M%S)

↑のようにいちいちdateコマンドでファイル名を作成していた。dateコマンドの書式を毎回忘れてしまうので、いちいち書式を確認するのに手間取っていた。

(書式くらい覚えておけば、というのはありますが、、、)

以上