「find」コマンドでファイルのタイムスタンプをリストします


26

bashでは、を使用すると$ find ./ -name "*.sqlite"、現在のディレクトリにあるすべてのsqliteファイルがリストされます。また、ファイルの変更時刻も確認したいのですが、誰か助けてもらえますか?

回答:


34

find次の式に追加できます。

-printf '%Tc %p\n'

のようなものを見るために

Sun Aug 14 06:29:38 2011 ./.nx/config/host.nxs

またはの-printf '%TD %TT %p\n'ために

08/14/11 06:29:38.2184481010 ./.nx/config/host.nxs

または-printf '%T+ %p\n'あなたが持っているGNU find場合、見るために

2011-08-14+06:29:38.2184481010 ./.nx/config/host.nxs

この最後のものは、利用可能な場合、時間の並べ替えにも役立ちます。

マニュアルページを参照してください。findそれが語ります、printf


-printfOS-Xでは機能しません。OS-Xで機能するこのコマンドに相当するものはありますか?
WanderingMind

@WanderingMind:OS-X では、多くのUNIXアプリケーション、特にGNU findなどのGNUツールを提供するMacPortsをインストールすることをお勧めします。
enzotib

22

で見つかったファイルの詳細を取得する簡単なハックfindは、-ls出力オプションを使用することです。

find ./ -name "*.sqlite" -ls

より正確な結果を得るために、enzotibの答えはスポットライトです。


私は賛成票を投じましたが、これは日付を適切に表示しないため、たとえば「最新」を見つけるのは困難です。
lpapp

これは私が私がひどく必要とされた-lsオプションについて知るようになった唯一の場所である
アトゥール

-1

以下のコマンドを使用して、タイムスタンプ付きのファイルのリストを取得します。

$ find . -type f | xargs ls -l --time-style="+%d-%m-%Y" 

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.