Holen Sie sich die älteste Datei in Directory Linux

Holen Sie sich die älteste Datei in Directory Linux
Es gibt eine Reihe von Befehlen, mit denen verschiedene Arten von Informationen zu Dateien und Verzeichnissen in einem Linux -Betriebssystem erhalten werden können. In diesem Artikel zeigen wir Ihnen, wie Sie die älteste Datei in einem Verzeichnis im Linux -Betriebssystem mit zwei verschiedenen Befehlen erhalten können. Zur Demonstration werden wir Ubuntu 20 verwenden.04 LTS. Sie können diesen Artikel auch für jede andere Linux -Verteilung folgen.

Um die älteste Datei in einem Linux -Verzeichnis zu erhalten, werden wir die verwenden finden Und ls Befehl. Lass uns anfangen.

Methode 1

In dieser Methode verwenden wir den Befehl Find, um die älteste Datei im Linux -Verzeichnis zu erhalten. Befehl suchen kann nach Dateien und Verzeichnissen basierend auf verschiedenen Kriterien wie der Suche nach Dateinamen, Typ, Berechtigungen, Erstellungsdatum, Datum der Änderung usw.

Um die älteste Datei in einem bestimmten Verzeichnis zu finden, können Sie den Befehl Find wie folgt verwenden:

$ find -Typ f -printf ' %t+ %p \ n' | sortieren | Kopf -n 1

Lassen Sie uns den Befehl aufschlüsseln:

  • finden ist der Befehl zum Durchsuchen von Dateien unter Linux.
  • ist der Pfad zum Verzeichnis, in dem Sie die Suchoperation ausführen möchten.
  • -Typ f wird verwendet, um nur nach den Dateien zu suchen. Verwenden Sie nach einem Verzeichnis, um nach einem Verzeichnis zu suchen -Typ d.
  • -printf ' %t+ %p \ n' druckt das letzte Änderungsdatum und die Zeit der Datei (definiert durch %t) und Dateipfad (definiert durch %p). Das \ n fügt eine neue Zeile hinzu.
  • Sortieren | Kopf -n 1 Es sortiert die Dateien numerisch und übergeben ihre Ausgabe an den Kopfbefehl, in dem die 1 älteste Datei angezeigt wird.

Um die älteste Datei im Home -Verzeichnis (~/) Ihres Systems zu finden, wäre der Befehl:

$ find ~/ -typ f -printf ' %t+ %p \ n' | sortieren | Kopf -n 1

In diesem Befehl wird die älteste Datei im Home -Verzeichnis Ihres Systems gedruckt.

Um 3 älteste Dateien im Home -Verzeichnis zu finden, ersetzen Sie 1 durch 3:

$ find ~/ -typ f -printf ' %t+ %p \ n' | sortieren | Kopf -n 3

In diesem Befehl werden 3 älteste Dateien des angegebenen Verzeichnisses gedruckt.

Wie Sie gesehen haben, gab der obige Befehl nur die ältesten Dateien zurück, nicht die Verzeichnisse. Verwenden Sie die älteste Verzeichnis im angegebenen Verzeichnis, um das älteste Verzeichnis anzuzeigen -Typ d anstatt -Typ f Wie nachfolgend dargestellt:

$ find -Type d -printf ' %t+ %p \ n' | sortieren | Kopf -n 1

Um beispielsweise das älteste Verzeichnis im Home -Verzeichnis (~/) Ihres Systems zu finden, wäre der Befehl:

$ find ~/ -type d -printf ' %t+ %p \ n' | sortieren | Kopf -n 1

In diesem Befehl wird das älteste Verzeichnis in Ihrem Heimverzeichnis drucken.

Ersetzen Sie 1 durch 3 älteste Verzeichnisse im Heimverzeichnis, um 1 durch 3 zu ersetzen:

$ find ~/ -type d -printf ' %t+ %p \ n' | sortieren | Kopf -n 3

In diesem Befehl werden die drei ältesten Verzeichnisse im Home -Verzeichnis drucken.

Methode 2

In dieser Methode werden wir den Befehl LS verwenden, um die älteste Datei in einem Linux -Verzeichnis zu erhalten. Die Ausgabe dieses Befehls enthält sowohl Dateien als auch Verzeichnisse.

Verwenden Sie eine der folgenden Befehlssyntax, um die älteste Datei in einem bestimmten Verzeichnis zu finden:

$ ls -t | Schwanz -1

oder

$ ls -tr | Kopf -1

Wenn Sie den Verzeichnispfad nicht angeben, zeigt der Befehl die älteste Datei oder das älteste Unterverzeichnis in Ihrem aktuellen Terminalverzeichnis an.

Verwenden Sie diesen Befehl, um 3 älteste Dateien im angegebenen Verzeichnis zu finden:

$ ls -t | Schwanz -3

oder

$ ls -tr | Kopf -3

Diese Befehle werden 3 älteste Dateien oder Verzeichnisse im angegebenen Verzeichnis angezeigt.

Das ist alles, was es gibt! In diesem Artikel haben wir behandelt, wie man die älteste Datei im Linux -Verzeichnis über zwei verschiedene Methoden bekommt. Ich hoffe, Sie finden diesen Artikel hilfreich!