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

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

不言
不言Original
2019-03-22 16:03:135767Durchsuche

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

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

, 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"

Weitere Teile zum obigen Befehl hinzufügen

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

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

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

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

[ -d /tmp/mydir ] && echo "Directory exists"

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

Verzeichnis:

1    [ ! -d /tmp/mydir ] && mkdir -p /tmp/mydir

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!

Stellungnahme:
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