
grep
出力を希望ls
し、パイプで接続してless
出力をスクロールできます。
これは機能しませんが、理想的には次のように入力できます。
ls -alh | grep "file" | less
これを行う方法について提案がありますか?私の全体的な目標は、ファイル名に "file"が含まれている現在のディレクトリ内のすべてのファイルの変更日を確認することです。読みましたstat
が、私の目的に比べて長すぎるようです。
答え1
「冗長すぎる」とは、コマンドが他の多くの情報もstat
出力することを意味すると仮定します。これは、特定の情報を要求しない場合はデフォルト値に設定されます。
GNUの使用stat
:
stat --printf '%y\t%n\n' -- *file*
これにより、修正タイムスタンプが人間が読める形式で出力され、その後にタブ文字とファイル名が表示されます。これは、部分文字列を含むすべてのファイル名に対して行われますfile
。でシェルオプションを設定すると、dotglob
隠しファイル名を含めることもできます。bash
shopt -s dotglob
代わりに、エポック以降の修正タイムスタンプ(秒)を取得するために%Y
使用してください。%y
BSDシステムでは、次のものを使用します。
stat -f '%Sm%t%N' -- *file*
代わりに(同じことをしてください)。エポック以降の秒を取得するように%Sm
変更されました。%Fm
詳しくは、stat
システムマニュアル()を参照してください。man 1 stat