GNU/Linux >> LINUX-Kenntnisse >  >> Linux

So finden Sie Dateien basierend auf dem Zeitstempel in Linux

Der Find-Befehl in Linux wird verwendet, um nach Dateien zu suchen und Ordner basierend auf verschiedenen Parametern. Diese Parameter können der Dateiname sein , Größe , Dateityp usw.

[Das könnte Ihnen auch gefallen:So finden Sie unter Linux Dateien, die eine bestimmte Textzeichenfolge enthalten]

Einer dieser Parameter ist der Zeitstempel der Datei. In Linux (und allen Unix-basierten Dateisystemen) gibt es 3 Zeitstempel für jede Datei gepflegt:

  1. Letzte Änderungszeit
  2. Zeitpunkt des letzten Zugriffs
  3. Zeitpunkt der letzten Statusänderung (d. h. wann Metadaten der Datei wie Berechtigungen geändert wurden)

Sehen wir uns an, wie man find verwendet um nach Dateien basierend auf jedem dieser Zeitstempel zu suchen .

Dateizeitstempel in Linux finden

Als erstes können wir die 'stat ausführen ‘-Befehl in Linux, um all diese Zeitstempel für eine Datei zu erhalten. Zum Beispiel für eine Datei mit dem Namen „stat ‘, ausführen:

$ stat tmp

Dateien anhand des Zeitstempels finden

Nun, um Dateien basierend auf dem Zeitstempel zu finden verwenden wir das Argument '-newerXY' von finden von der Manpage.

man find

Also im Argument '-newerXY' , können wir X haben als ein , c , oder m , jeweils für letzten Zugriff, letzte Statusänderung und letzte Änderungszeiten, und Y als t , sodass das nächste Argument ein Zeitstempel sein kann Zeichenfolge.

Hinweis :Die Geburtszeit, d. h. die Erstellungszeit einer Datei, wird in Unix nicht gepflegt basierte Dateisysteme

Verallgemeinert sieht der auszuführende Befehl so aus:

find <directory_path> -newer<a/m/c>t ‘<timestamp>’

Hier das Format des Zeitstempels sollte sein:‘YYYY-MM-DD HH:MM:SS’ .

Versuchen wir dies an einem Ordner mit wenigen Dateien und nur zwei Dateien, auf die zugegriffen wurde, die geändert wurden und deren Status sich nach einer bestimmten Zeit geändert hat.

find . -newerat ‘2021-02-19 06:34’
find . -newerct ‘2021-02-19 06:34’
find . -newermt ‘2021-02-19 06:34’

Bestätigen Sie mit ‘stat’ wenn die Zeitstempel beider Dateien sind tatsächlich größer als die angegebene Zeit.

stat tmp2 tmp3
Schlussfolgerung

Wir haben gelernt, wie man '-newerXY' verwendet das Argument des Befehls find um nach Dateien basierend auf Zeitstempel zu suchen .

Beachten Sie, dass Sie auch eine andere Datei für einen Referenz-Zeitstempel verwenden können anstatt den Zeitstempel explizit anzugeben , in diesem Fall das 't' aus dem Argument kann übersprungen werden.

Vielen Dank fürs Lesen und teilen Sie uns Ihre Gedanken in den Kommentaren unten mit!


Linux
  1. So konvertieren Sie Dateien in UTF-8-Codierung unter Linux

  2. So finden Sie die zuletzt oder heute geänderten Dateien in Linux

  3. So finden Sie doppelte Dateien in Linux

  4. So finden Sie Dateien im DOS-Format in einem Linux-Dateisystem

  5. Wie liste ich Dateien mit vollständigen Pfaden in Linux auf?

So finden Sie Dateien in Debian 10

Linux-Berechtigungen – So finden Sie Berechtigungen einer Datei

So finden Sie Dateien, die eine bestimmte Textzeichenfolge in Linux enthalten

So finden Sie Dateien, die in den letzten 24 Stunden in Linux geändert wurden

So finden Sie Dateien mit dem fd-Befehl in Linux

So komprimieren Sie eine Datei unter Linux