Edited at

ディレクトリにある最新のファイルをtail -fしたい

$ ls -t | head -n 1 | xargs tail -f

コマンド
説明

ls -tr
ファイル一覧を日付昇順(新しいものから順に)取得

head -n 1
先頭行を1つだけ(最新のファイル名を取得)

xargs tail -f
そのファイルをtail -fする


何がしたいか

ログの種類によってはファイル名に日付が付くことがあり、そこから最新のファイル名を確認してtail -fするのが大変だったりします。

image.png

特に運用が始まってファイルが増えてくると大変です。

このコマンドをエイリアス掛けておくと便利です。

$ alias lt='ls -t | head -n 1 | xargs tail -f'


でも

headしたときにディレクトリがヒットしてしまう可能性や、xargsに変なものが渡ったりしそうなので、findなどでアレンジしたほうが良いかも。