Listen Sie den Zeitstempel der Dateien im Befehl "find" auf


26

Wenn ich bash verwende $ find ./ -name "*.sqlite", werden alle SQLite-Dateien im aktuellen Verzeichnis aufgelistet. Ich möchte auch die geänderte Zeit der Dateien sehen. Kann mir jemand helfen?

Antworten:


34

Sie können findden folgenden Ausdruck ergänzen :

-printf '%Tc %p\n'

um so etwas zu sehen

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

oder -printf '%TD %TT %p\n'für

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

oder -printf '%T+ %p\n'wenn Sie haben GNU find, um zu sehen

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

Dieser letzte, falls verfügbar, ist auch für die Zeitsortierung nützlich.

Siehe Handbuchseite von find, wo es darum geht printf.


-printffunktioniert nicht in OS-X. Gibt es ein Äquivalent zu diesem Befehl, das für OS-X funktioniert?
WanderingMind

@WanderingMind: In OS-X schlage ich vor, MacPorts zu installieren , das viele UNIX-Anwendungen bietet, insbesondere GNU-Tools wie GNU find.
Enzotib

22

Ein schneller Hack, um mehr Details über die gefundenen Dateien zu erhalten, findist die Verwendung der -lsAusgabeoption.

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

Für genauere Ergebnisse ist die Antwort von enzotib genau richtig .


Ich habe zugestimmt, aber dies zeigt das Datum nicht richtig an, so ist es beispielsweise schwierig, das "neueste" zu finden.
lpapp

Dies ist der einzige Ort , wo ich kam -Ls Option zu wissen , was ich schlecht war , um
Atul

-1

Verwenden Sie den folgenden Befehl, um eine Liste der Dateien mit Zeitstempel abzurufen.

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

-3

Das funktioniert bei mir:

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

4
Dies scheint ein vollständiges Duplikat von @ Calebs Antwort zu sein.
Chris Down
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.