Zum Hauptinhalt springen

So überprüfen Sie die Existenz einer Datei unter Linux: Eine detaillierte Anleitung

Linux ist ein leistungsfähiges Open-Source-Betriebssystem, das in verschiedenen Bereichen weit verbreitet ist. Wenn Sie mit Dateien und Verzeichnissen unter Linux arbeiten, müssen Sie möglicherweise überprüfen, ob eine Datei vorhanden ist, bevor Sie bestimmte Vorgänge ausführen. In diesem Artikel werden wir uns ansehen, wie dies gemacht wird.

Es gibt mehrere Möglichkeiten, die Existenz einer Datei unter Linux zu überprüfen. Eine davon ist die Verwendung eines Befehls test. Mit dem Befehl test können Sie verschiedene Bedingungen überprüfen und den entsprechenden Abschlussstatus zurückgeben. Sie können das folgende Konstrukt verwenden, um zu überprüfen, ob eine Datei existiert:

In diesem Beispiel überprüfen wir die Bedingung, dass eine Datei im angegebenen Pfad vorhanden ist. Wenn die Datei vorhanden ist, wird die Meldung "Datei existiert" angezeigt. Andernfalls wird die Meldung "Die Datei existiert nicht" angezeigt.

Eine andere Möglichkeit, die Existenz einer Datei zu überprüfen, besteht darin, einen Befehl zu verwenden ls. Der Befehl ls gibt Informationen über Dateien und Verzeichnisse aus. Wenn die Datei existiert, gibt ls den Status 0 zurück, andernfalls den Status ungleich Null. Sie können das folgende Konstrukt zur Überprüfung verwenden:

Bei Verwendung dieses Konstrukts gibt der Befehl ls keine Dateiinformationen aus, sondern leitet sie an /dev/null weiter, um unerwünschte Ausgaben zu vermeiden. Wenn eine Datei vorhanden ist, wird die Meldung "Datei existiert" angezeigt. Wenn keine Datei vorhanden ist, wird die Meldung "Die Datei existiert nicht" angezeigt.

Grundlegende Befehle zum Überprüfen der Existenz einer Datei

Sie können mehrere Befehle verwenden, um zu überprüfen, ob eine Datei auf einem Linux-Betriebssystem vorhanden ist. Betrachten Sie die wichtigsten.

1. Befehl ls

Schreiben Sie den Befehl ls Dateiname im Terminal, um zu überprüfen, ob die Datei existiert. Wenn eine Datei vorhanden ist, wird ihr Name in der Befehlsausgabe ausgegeben. Andernfalls wird ein Fehler ausgegeben.

ls myfile.txt

2. Test-Befehl

Der Befehl test -f Dateiname kann auch verwendet werden, um zu überprüfen, ob eine Datei existiert. Wenn die Datei vorhanden ist, gibt der Befehl den Code 0 zurück, andernfalls wird ein Wert ungleich Null zurückgegeben.

if test -f myfile.txt; thenecho "Файл существует"elseecho "Файл не существует"fi

3. Das Team [

Das Team [ -f Dateiname ] dasselbe gilt für den Befehl test -f Dateiname . Es gibt auch den Code 0 zurück, wenn die Datei vorhanden ist und andernfalls ein Wert ungleich Null ist.

if [ -f myfile.txt ]; thenecho "Файл существует"elseecho "Файл не существует"fi

Jetzt kennen Sie die grundlegenden Befehle, um die Existenz einer Datei unter Linux zu überprüfen. Verwenden Sie sie in Ihrer Arbeit, um das Dateisystem effizienter zu verwalten.

Prüfen, ob eine Datei im aktuellen Verzeichnis vorhanden ist

Sie können den Befehl ls verwenden, um zu überprüfen, ob eine Datei im aktuellen Verzeichnis des Linux-Betriebssystems vorhanden ist. Der Befehl ls zeigt den Inhalt des aktuellen Verzeichnisses an, und Sie können mit einem zusätzlichen Parameter einen bestimmten Dateinamen angeben.

Um zu überprüfen, ob eine Datei mit dem Namen example existiert.führen Sie im aktuellen Verzeichnis den folgenden Befehl aus:

Wenn die Datei vorhanden ist, wird der Name der Datei angezeigt, andernfalls wird der Befehl ls nichts ausgeben.

Wenn Sie zusätzliche Schritte ausführen müssen, wenn eine Datei vorhanden ist, können Sie bedingte Konstrukte wie if- und else-Anweisungen in Kombination mit dem Befehl ls verwenden.

Prüfen, ob eine Datei im angegebenen Verzeichnis existiert

Um die Existenz einer Datei in einem bestimmten Verzeichnis unter Linux zu überprüfen, können Sie den Befehl verwenden ls. Es ermöglicht Ihnen, Informationen über Dateien und Verzeichnisse in einem bestimmten Verzeichnis anzuzeigen.

Um zu überprüfen, ob eine Datei im angegebenen Verzeichnis existiert, müssen Sie den folgenden Befehl ausführen:

ls /Pfad/zu/Verzeichnis/Dateiname

Wenn die Datei mit dem angegebenen Namen im angegebenen Verzeichnis vorhanden ist, wird der Befehl ls zeigt seinen Namen in der Konsole an. Wenn sich im angegebenen Verzeichnis keine Datei mit diesem Namen befindet, wird der Befehl ls es bringt nichts heraus.

Zusätzlich zur Überprüfung der Existenz der Datei wird der Befehl ls kann auch zusätzliche Informationen über die Datei ausgeben, z. B. Größe, Zugriffsrechte, Erstellungsdatum usw. Dazu können Sie verschiedene Befehlsoptionen verwenden.

Beispiel: Ausführen eines Befehls ls -l /Pfad/zu/Verzeichnis/Dateiname zeigt Informationen über die Datei in einem detaillierteren Format an, einschließlich ihrer Zugriffsrechte, des Besitzers, der Gruppe und anderer Informationen.

Sie können auch den Befehl verwenden test um zu überprüfen, ob eine Datei im angegebenen Verzeichnis existiert. Das Team test gibt 0 zurück, wenn die Datei vorhanden ist, und einen Wert ungleich Null, wenn die Datei nicht vorhanden ist.

Befehlsausführung test -e /Pfad/zu/Verzeichnis/Dateiname überprüft die Existenz einer Datei im angegebenen Verzeichnis. Wenn eine Datei mit dem angegebenen Namen vorhanden ist, wird der Befehl test gibt 0 zurück. Wenn keine Datei mit diesem Namen vorhanden ist, lautet der Befehl test gibt einen Wert ungleich Null zurück.

Jetzt wissen Sie, wie Sie die Existenz einer Datei in einem bestimmten Verzeichnis unter Linux mit dem Befehl überprüfen können ls oder Befehle test. Verwenden Sie diese Befehle in Ihrer Arbeit, um sicherzustellen, dass die gewünschte Datei vorhanden ist, bevor sie sie verarbeitet oder verwendet.

Überprüfen der Existenz einer Datei mithilfe eines absoluten Pfads

Um zu überprüfen, ob eine Datei mit einem absoluten Pfad vorhanden ist, können Sie den Befehl "ls" wie folgt verwenden:

Wenn die Datei vorhanden ist, gibt der Befehl "ls" Informationen über die Datei aus, einschließlich Name, Größe und Erstellungsdatum. Wenn keine Datei vorhanden ist, gibt der Befehl "ls" den Fehler "No such file or directory" aus (keine Datei oder kein Verzeichnis gefunden).

Zum Beispiel, um zu überprüfen, ob eine Datei mit dem absoluten Pfad "/home/user/file" existiert.txt", müssen Sie den folgenden Befehl ausführen:

Wenn eine Datei vorhanden ist, werden Informationen darüber angezeigt.

Daher ist es eine einfache und effiziente Operation, die Existenz einer Datei unter Verwendung eines absoluten Pfads unter Linux zu überprüfen, die über die Befehlszeile ausgeführt werden kann.

Anwenden einer Bedingung, um zu überprüfen, ob eine Datei existiert

Eine der einfachsten Möglichkeiten, die Existenz einer Datei zu überprüfen, besteht darin, eine bedingte Anweisung zu verwenden if. Das folgende Beispiel zeigt die Verwendung:

 if [ -f "file.txt" ]; then echo "Файл существует." else echo "Файл не существует." fi

In diesem Beispiel verwenden wir die Validierung -f um festzustellen, ob eine Datei "file" existiert.txt". Wenn die Datei vorhanden ist, wird die Meldung "Die Datei existiert.". Andernfalls wird die Meldung "Die Datei existiert nicht.". Wenn Sie andere Befehle ausführen müssen, wenn eine Datei existiert oder nicht existiert, können Sie sie nach der Bedingung der Anweisung hinzufügen then.

Wenn Sie überprüfen müssen, ob eine Datei in einem bestimmten Verzeichnis existiert, können Sie den vollständigen Dateipfad in der Anweisung angeben if. Zum Beispiel:

 if [ -f "/path/to/file.txt" ]; then echo "Файл существует." else echo "Файл не существует." fi

Auf diese Weise können Sie überprüfen, ob die Datei irgendwo auf dem Dateisystem existiert. Denken Sie daran, dass Sie die Validierung verwenden können, um die Existenz eines Verzeichnisses zu überprüfen -d.

Jetzt wissen Sie, wie Sie die bedingte Anweisung verwenden, um zu überprüfen, ob eine Datei unter Linux existiert. Dies erleichtert das Ausführen bestimmter Aktionen nur, wenn die Datei vorhanden ist, und vermeidet Fehler, die mit fehlenden Dateien zusammenhängen, die Ihr Skript oder Ihr Befehl erwartet.

Prüfen, ob eine Datei und ihr Dateityp vorhanden sind

Sie können den Befehl test -f verwenden, um zu überprüfen, ob eine Datei vorhanden ist. Der folgende Befehl überprüft beispielsweise, ob eine Datei mit dem Namen file vorhanden ist.txt :

$ test -f file.txt

Wenn die Datei vorhanden ist, gibt der Befehl nichts aus und gibt den Status 0 zurück. Wenn keine Datei vorhanden ist, gibt der Befehl auch nichts aus, gibt jedoch den Status 1 zurück.

Sie können den Dateityp mit dem Befehl file definieren. Der folgende Befehl gibt beispielsweise den Dateityp an:

$ file file.txt

Der Befehl gibt Informationen zum Dateityp aus, z. B.:

file.txt: ASCII text

Wenn die Datei nicht vorhanden ist, gibt der Befehl eine Fehlermeldung aus.

Sie können auch den Befehl stat verwenden, um Informationen über die Datei abzurufen. Der folgende Befehl zeigt beispielsweise die Dateiinformationen an:

$ stat file.txt

Der Befehl gibt verschiedene Informationen über die Datei aus, einschließlich Typ, Größe, Zugriffszeit, Änderungszeit usw.

Verwenden des Befehls find, um zu überprüfen, ob eine Datei im gesamten System vorhanden ist

Der Befehl find bietet eine leistungsstarke und flexible Möglichkeit, Dateien und Verzeichnisse im gesamten Linux-Dateisystem zu finden. Es ermöglicht Ihnen, nach verschiedenen Kriterien zu suchen, einschließlich Dateiname, Größe, Typ, Zugriffsberechtigungen und vieles mehr.

Verwenden Sie den folgenden Befehl, um zu überprüfen, ob eine Datei im gesamten System vorhanden ist:

find / -name "Dateiname"

In diesem Befehl steht / für das Stammverzeichnis und Dateiname ist der Name der Datei, deren Existenz überprüft werden soll.

Um beispielsweise zu überprüfen, ob eine Datei mit dem Namen existiert example.txt im gesamten System sollten Sie den Befehl ausführen:

find / -name "example.txt"

Wenn eine Datei mit dem angegebenen Namen vorhanden ist, gibt der Befehl find den Dateipfad aus. Andernfalls ist die Ausgabe leer.

Anmerkung: Eine solche Suche kann einige Zeit in Anspruch nehmen, da das gesamte Dateisystem durchforstet wird. Wenn Sie also den ungefähren Pfad zu einer Datei kennen, wird empfohlen, sie anstelle des Zeichens / im Befehl anzugeben.

Der Befehl find unterstützt auch die Verwendung anderer Suchkriterien, um Suchbegriffe genauer zu definieren. Sie können beispielsweise nur angeben, nach Dateien eines bestimmten Typs zu suchen (z. B. nur Textdateien) oder nach Dateien, die in einem bestimmten Zeitraum geändert wurden.

Die Verwendung des Befehls find zum Überprüfen der Existenz einer Datei im gesamten System stellt eine bequeme Möglichkeit dar, eine Datei zu finden, falls Sie ihren genauen Speicherort nicht kennen.