Wir wissen bereits, wie man ähnliche Dateitypen in bestimmten Ordnern organisiert in Linux und Unix-ähnlichen Betriebssystemen. Bei dieser Methode haben wir gelernt, ähnliche Dateitypen in einem Ordner zu organisieren. Mit anderen Worten, die Dateien wurden basierend auf ihrer Erweiterung organisiert. Wir wissen nicht, ob die Datei neu oder alt ist. Wir legen einfach denselben Dateityp in einem Ordner ab. Heute werden wir in diesem Handbuch Dateien basierend auf Zugriffs- und Änderungsdatum und -zeit suchen und sortieren, nicht auf der Grundlage der Erweiterung. Falls Sie eine bestimmte Datei finden möchten, auf die an einem bestimmten Datum oder zu einer bestimmten Uhrzeit zugegriffen oder diese geändert wurde, sind Sie auf dem richtigen Weg. Lesen Sie weiter.
Empfohlener Download - Kostenloser Spickzettel:"Linux-Befehlszeilen-Spickzettel"Suchen und sortieren Sie Dateien basierend auf Zugriff, Änderungsdatum und -zeit in Linux
Sie müssen keine zusätzlichen Anwendungen installieren, um Dateien zu finden und zu sortieren. Für diesen Leitfaden verwenden wir drei Linux-Befehle, nämlich ls , finden und sortieren . Diese Befehle sind Teil des Linux-Kernels, also machen Sie sich nicht die Mühe, sie zu installieren.
Wie Sie vielleicht bereits wissen, sind die ls Der Befehl listet den Inhalt eines Verzeichnisses mit zusätzlichen Informationen wie Datum und Uhrzeit der Änderung oder des Zugriffs, Berechtigungen, Größe, Eigentümer, Gruppe usw. auf. Er sortiert die Einträge des angegebenen Verzeichnisses alphabetisch. Wenn Sie das Verzeichnis nicht erwähnt haben, wird es den Inhalt des aktuellen Arbeitsverzeichnisses auflisten.
Der fund Der Befehl wird verwendet, um nach Dateien in einer Verzeichnishierarchie zu suchen.
Die Sortierung Befehl sortiert die Zeilen von Textdateien und schreibt eine sortierte Verkettung aller DATEIEN auf die Standardausgabe.
1. Suchen und sortieren Sie Dateien basierend auf der Zeit des letzten Zugriffs mit dem Befehl ls
Der folgende Befehl listet Dateien basierend auf der letzten Zugriffszeit auf. Die neuesten Dateien werden zuerst aufgelistet.
$ ls -ltu
Beispielausgabe:
total 104 drwxr-xr-x 18 sk users 4096 May 3 18:02 Personal drwxr-xr-x 3 sk users 4096 May 3 11:57 Notebooks drwxr-xr-x 9 sk users 4096 May 3 11:57 Official drwxrwxr-x 3 sk users 4096 May 3 11:57 en-TED drwxr-xr-x 5 sk users 4096 May 3 11:57 Soft_Backup drwxr-xr-x 9 sk users 4096 May 3 11:57 'VirtualBox VMs' drwxr-xr-x 2 sk users 4096 May 3 11:57 Wallpapers drwxr-xr-x 2 sk users 4096 May 3 11:57 Public drwxr-xr-x 2 sk users 4096 May 3 11:57 Documents drwxr-xr-x 2 sk users 4096 May 3 11:57 Music drwxr-xr-x 2 sk users 4096 May 3 11:57 Videos drwxr-xr-x 2 sk users 4096 May 3 11:56 Desktop drwxr-xr-x 2 sk users 4096 May 3 11:56 Templates drwxr-xr-x 5 sk users 4096 May 2 20:53 Entertainment -rw-r--r-- 1 sk users 951 May 2 20:52 'pre code.txt' -rw-r--r-- 1 sk users 50 May 2 20:52 file.txt drwxr-xr-x 11 sk users 20480 May 2 20:34 Downloads drwxr-xr-x 5 sk users 12288 May 2 20:13 Pictures
Hier,
- -u - Sortieren nach Zugriffszeit, neueste zuerst
2. Suchen und sortieren Sie Dateien basierend auf der Änderungszeit mit dem Befehl ls
Führen Sie Folgendes aus, um Dateien basierend auf der Änderungszeit aufzulisten:
$ ls -lt
Hier,
- -l - Zeigt das lange Auflistungsformat an,
- -t - Sortieren nach Änderungszeit, neueste zuerst.
Beispielausgabe:
total 104 drwxr-xr-x 11 sk users 20480 May 2 20:34 Downloads drwxr-xr-x 5 sk users 12288 May 1 17:32 Pictures drwxr-xr-x 9 sk users 4096 May 1 16:45 'VirtualBox VMs' drwxr-xr-x 2 sk users 4096 Apr 24 20:30 Documents drwxr-xr-x 2 sk users 4096 Apr 11 13:02 Desktop -rw-r--r-- 1 sk users 951 Apr 7 20:20 'pre code.txt' drwxr-xr-x 9 sk users 4096 Mar 27 19:31 Official -rw-r--r-- 1 sk users 50 Mar 23 20:24 file.txt drwxr-xr-x 2 sk users 4096 Mar 21 17:43 Videos drwxr-xr-x 3 sk users 4096 Mar 14 16:32 Notebooks drwxr-xr-x 2 sk users 4096 Jan 7 14:55 Music drwxr-xr-x 18 sk users 4096 Dec 19 14:36 Personal drwxrwxr-x 3 sk users 4096 Nov 30 01:57 en-TED drwxr-xr-x 5 sk users 4096 Aug 20 2016 Entertainment drwxr-xr-x 2 sk users 4096 May 11 2016 Public drwxr-xr-x 2 sk users 4096 May 11 2016 Templates drwxr-xr-x 2 sk users 4096 May 9 2016 Wallpapers drwxr-xr-x 5 sk users 4096 May 4 2016 Soft_Backup
Der obige Befehl sortiert die Dateien des aktuellen Arbeitsverzeichnisses basierend auf der Änderungszeit. Die neuesten Dateien werden zuerst angezeigt.
Geben Sie Folgendes ein, um die Dateien eines bestimmten Verzeichnisses basierend auf der Änderungszeit aufzulisten:
$ ls -lt ~/Downloads/
Um die Dateien in umgekehrter Reihenfolge aufzulisten, d. h. die ältesten Dateien zuerst, verwenden Sie 'r' Flagge wie unten:
$ ls -ltr
3. Suchen und sortieren Sie Dateien basierend auf dem Zeitpunkt der letzten Änderung mit dem ls-Befehl
Der Befehl listet die Dateien basierend auf dem Zeitpunkt der letzten Änderung auf. Das bedeutet, dass dieser Befehl zuerst die Dateien auflistet, deren Statusinformationen (wie Eigentümer, Gruppe, Berechtigungen, Größe usw.) kürzlich geändert wurden.
$ ls -ltc
Beispielausgabe:
total 104 drwxr-xr-x 11 sk users 20480 May 2 20:34 Downloads drwxr-xr-x 5 sk users 12288 May 1 17:32 Pictures drwxr-xr-x 9 sk users 4096 May 1 16:45 'VirtualBox VMs' drwxr-xr-x 2 sk users 4096 Apr 24 20:30 Documents drwxr-xr-x 2 sk users 4096 Apr 11 13:02 Desktop -rw-r--r-- 1 sk users 50 Apr 8 16:28 file.txt -rw-r--r-- 1 sk users 951 Apr 7 20:20 'pre code.txt' drwxr-xr-x 9 sk users 4096 Mar 27 19:31 Official drwxr-xr-x 2 sk users 4096 Mar 21 17:43 Videos drwxr-xr-x 3 sk users 4096 Mar 14 16:32 Notebooks drwxrwxr-x 3 sk users 4096 Jan 18 12:36 en-TED drwxr-xr-x 2 sk users 4096 Jan 7 14:55 Music drwxr-xr-x 18 sk users 4096 Dec 19 14:36 Personal drwxr-xr-x 5 sk users 4096 Aug 20 2016 Entertainment drwxr-xr-x 2 sk users 4096 May 11 2016 Public drwxr-xr-x 2 sk users 4096 May 11 2016 Templates drwxr-xr-x 2 sk users 4096 May 9 2016 Wallpapers drwxr-xr-x 5 sk users 4096 May 9 2016 Soft_Backup
Hier,
- -c - Nach letztem Änderungszeitpunkt sortieren
4. Dateien nach Datum suchen und sortieren
Der folgende Befehl listet die Dateien basierend auf Datum und Uhrzeit des letzten Zugriffs auf. Die neuesten Dateien werden zuerst aufgelistet.
$ find /home/sk/ostechnix/ -type f -printf "\n%AD %AT %p" | head -n 10
Beispielausgabe:
04/27/17 15:51:16.4508342970 /home/sk/ostechnix/The Devops toolkit.pdf 04/27/17 15:51:17.1375009660 /home/sk/ostechnix/THE LINUX COMMAND LINE.pdf 04/27/17 15:51:12.9508342850 /home/sk/ostechnix/Google power search.pdf 04/27/17 15:51:10.3475009420 /home/sk/ostechnix/Docker.pdf 04/27/17 15:51:14.0108342880 /home/sk/ostechnix/Linux Shell Scripting.pdf 04/27/17 15:51:17.4208343000 /home/sk/ostechnix/WpPMaq8.jpg 04/27/17 15:51:12.7675009510 /home/sk/ostechnix/DoubleClick_Mobile_Web_Speed_Toolkit.pdf 04/27/17 15:51:01.9308342460 /home/sk/ostechnix/Ed Sheeran - Shape Of You.mp3 04/27/17 15:51:02.7341675830 /home/sk/ostechnix/tor-browser_en-US/start-tor-browser.desktop
In der obigen Ausgabe zeigt die erste Spalte das Datum des letzten Zugriffs auf die Datei, die zweite Spalte zeigt die Uhrzeit des letzten Zugriffs und die dritte Spalte zeigt den Namen der Datei. Hier ist 'head -n 10' nicht die Anzahl der Dateien. Es ist die Anzahl der Einträge in der Ausgabe einschließlich der Leerzeichen.
Außerdem können Sie den Befehl „sort“ mit dem Befehl „ls“ verwenden, um die Dateien basierend auf Monat, Datum und Uhrzeit des letzten Zugriffs wie unten aufzulisten.
$ ls -l ostechnix/ | sort -k6M -k7n | head -n 10
Beispielausgabe:
total 44024 drwx------ 3 sk users 4096 Apr 27 15:51 tor-browser_en-US drwxr-xr-x 3 sk users 4096 Apr 27 15:51 Arch master -rw-r--r-- 1 sk users 183396 Apr 27 15:51 Linux commandline cheat sheet.pdf -rw-r--r-- 1 sk users 2031375 Apr 27 15:51 Google power search.pdf -rw-r--r-- 1 sk users 233955 Apr 27 15:51 bash_tips.pdf -rw-r--r-- 1 sk users 2597261 Apr 27 15:51 Docker.pdf -rw-r--r-- 1 sk users 270623 Apr 27 15:51 sag-0.6.1.pdf.gz -rw-r--r-- 1 sk users 3857569 Apr 27 15:51 THE LINUX COMMAND LINE.pdf -rw-r--r-- 1 sk users 3902301 Apr 27 15:51 Ed Sheeran - Shape Of You.mp3
Hier,
- -k6M - Listet Dateien monatlich (6. Feld) in der Ausgabe auf.
- -k7n - Listet Dateien nach Datum (7. Feld) in der Ausgabe auf.
Und das ist alles. Sie wissen jetzt, wie Sie Dateien basierend auf dem Zugriff, der Änderungszeit und dem Datum in Linux finden und sortieren können. Wie Sie in den obigen Beispielen sehen können, ist es ziemlich einfach, die Dateien zu sortieren. Weitere Einzelheiten finden Sie in den Manpages der einzelnen Befehle.
$ man ls
$ man find
$ man sort