Lösung 1:
Nein, Sie können eine Datums-/Zeitzeichenfolge verwenden.
Ab man find
:
-neuere XY-Referenz
Vergleicht den Zeitstempel der aktuellen Datei mit Referenz. Das Referenzargument ist normalerweise der Name einer Datei (und einer ihrer Zeitstempel wird für den Vergleich verwendet), aber es kann auch ein String sein, der eine absolute Zeit beschreibt. X und Y sind Platzhalter für andere Buchstaben, und diese Buchstaben wählen aus, welcher Zeitbezug für den Vergleich verwendet wird.
a The access time of the file reference
B The birth time of the file reference
c The inode status change time of reference
m The modification time of the file reference
t reference is interpreted directly as a time
Beispiel:
find -newermt "mar 03, 2010" -ls
find -newermt yesterday -ls
find -newermt "mar 03, 2010 09:00" -not -newermt "mar 11, 2010" -ls
Lösung 2:
Nicht direkt mit der Frage verbunden, könnte aber für einige interessant sein, die hierher stolpern.
finden Der Befehl unterstützt den Parameter -older nicht direkt, um Dateien zu finden, die älter als ein erforderliches Datum sind, aber Sie können die Negate-Anweisung verwenden (unter Verwendung eines akzeptierten Antwortbeispiels):
touch -t 201003160120 some_file
find . ! -newer some_file
gibt ältere Dateien zurück als das angegebene Datum.
Lösung 3:
Wenn Sie nur '-newer file' haben, können Sie diese Problemumgehung verwenden:
# create 'some_file' having a creation date of 16 Mar 2010:
touch -t 201003160120 some_file
# find all files created after this date
find . -newer some_file
menschliche Berührung:
-t STAMP
use [[CC]YY]MMDDhhmm[.ss] instead of current time
Angenommen, Ihr Touch hat diese Option (meiner ist Touch 5.97).
Lösung 4:
find <dir> -mtime -20
Dieser Suchbefehl findet Dateien, die in den letzten 20 Tagen geändert wurden.
- mtime -> geändert (atime=zugegriffen, ctime=erstellt)
- -20 -> weniger als 20 Tage alt (20 genau 20 Tage, +20 mehr als 20 Tage)
Sie können zusätzliche Einschränkungen hinzufügen wie:
find <dir> -mtime -20 -name "*.txt"
wie zuvor, findet aber nur Dateien mit der Endung '.txt'.
Lösung 5:
Nur um hinzuzufügen - Sie können sogar zwei newmt-Argumente verwenden, um in einem Zeitintervall zu suchen:
find ! -newermt "apr 01 2007" -newermt "mar 01 2007" -ls
um alle Dateien vom März 2007 zu finden.