Heim > Betrieb und Instandhaltung > Betrieb und Wartung von Linux > Bash Shell: Testen Sie, ob eine Datei oder ein Verzeichnis vorhanden ist

Bash Shell: Testen Sie, ob eine Datei oder ein Verzeichnis vorhanden ist

不言
Freigeben: 2019-03-22 16:03:13
Original
5823 Leute haben es durchsucht

Bei der Bash-Programmierung müssen wir häufig prüfen, ob eine Datei bereits vorhanden ist, eine neue Datei erstellen und Daten in die Datei einfügen. Manchmal müssen wir auch andere Skripte aus anderen Skripten ausführen. In diesem Artikel wird die Bash-Shell vorgestellt: Testen, ob eine Datei oder ein Verzeichnis vorhanden ist.

Bash Shell: Testen Sie, ob eine Datei oder ein Verzeichnis vorhanden ist

1. Bash-Shell: Testen Sie, ob die Datei vorhanden ist

Wenn wir Inhalte hinzufügen oder eine Datei erstellen müssen aus einem Skript. Stellen Sie zunächst sicher, dass die Datei bereits vorhanden ist. Beispielsweise erstellt eines meiner Skripte ein Protokoll in der Datei/tmp/testfile.log und wir müssen sicherstellen, dass diese Datei vorhanden ist.

#!/bin/bash
 
if [ -f /tmp/testfile.log ]
then
    echo "File exists"
fi
Nach dem Login kopieren

Die obige Aussage kann auch mit dem test-Schlüsselwort geschrieben werden, wie unten gezeigt

#!/bin/bash
 
if test -f /tmp/testfile.log
then
    echo "File exists"
fi
Nach dem Login kopieren

, oder wir können sie wie unten gezeigt in einer Zeile schreiben. Dies ist beim Schreiben von Shell-Skripten sehr nützlich.

[ -f /tmp/testfile.log ] && echo "File exists"
Nach dem Login kopieren

Weitere Teile zum obigen Befehl hinzufügen

[ -f /tmp/testfile.log ] && echo "File exists" || echo "File not exists"
Nach dem Login kopieren

2. Bash-Shell: Testen Sie, ob das Verzeichnis existiert

Manchmal müssen wir eine Datei erstellen in einem Verzeichnis, oder ein Verzeichnis ist erforderlich. Wir sollten alle sicherstellen, dass dieses Verzeichnis existiert. Wir prüfen nun beispielsweise, ob /tmp/mydir existiert.

#!/bin/bash
 
if [ -d /tmp/mydir ]
then
    echo "Directory exists"
fi
Nach dem Login kopieren

Die obige Aussage kann auch mit dem Schlüsselwort test geschrieben werden, wie unten gezeigt

#!/bin/bash
 
if test -d /tmp/mydir
then
    echo "Directory exists"
fi
Nach dem Login kopieren

, oder in einer Zeile können wir sie wie unten gezeigt schreiben

[ -d /tmp/mydir ] && echo "Directory exists"
Nach dem Login kopieren

3. Bash-Shell: Dateiverzeichnis erstellen, falls nicht vorhanden

Dies ist die beste Möglichkeit, vor dem Erstellen zu überprüfen, ob eine Datei vorhanden ist. Andernfalls erhalten Sie möglicherweise eine Fehlermeldung. Dies ist nützlich, wenn Sie Dateien oder Verzeichnisse erstellen, die ein Shell-Skript zur Laufzeit benötigt.

Datei:

[ ! -f /tmp/testfile.log ] && touch /tmp/testfile.log
Nach dem Login kopieren

Verzeichnis:

1    [ ! -d /tmp/mydir ] && mkdir -p /tmp/mydir
Nach dem Login kopieren

Für weitere spannende Inhalte können Sie PHP Chinese Net folgen Linux-Tutorial-Video Kolumne!

Das obige ist der detaillierte Inhalt vonBash Shell: Testen Sie, ob eine Datei oder ein Verzeichnis vorhanden ist. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage