Wie um zu überprüfen, Verzeichnis vorhanden, oder nicht in linux.?
Angegebenen Dateipfad (z.B. /src/com/mot
), wie kann ich überprüfen, ob mot
vorhanden ist, und erstellen Sie, wenn Sie nicht mit Linux-oder shell-scripting??
InformationsquelleAutor Vivek | 2012-01-09
Du musst angemeldet sein, um einen Kommentar abzugeben.
Mit bash/sh/ksh, die Sie tun können:
Für Dateien, ersetzen
-d
mit-f
, dann Sie können tun, was Operationen, die Sie benötigen, auf die nicht-existierende-Datei.mkdir -p
handelt nicht auf ein vorhandenes Verzeichnis.Das ist ein fairer Punkt. Ich werde es verlassen, wenn, als ob, gibt das OP den Rahmen, in den Fall, Sie will andere Dinge zu tun, bevor die
mkdir
.Beachten Sie, dass dies eine race-Bedingung in dem Fall, dass das Verzeichnis angelegt wird, die zwischen der ersten und zweiten Zeile.
In der Tat, aber das "race" - Bedingung (wenn auch mit einem viel kleineren Fenster der Wahrscheinlichkeit) wird auch auftreten, wenn Sie nur
mkdir -p
(es sei denn, einige Dateisystem-implementiert und stellt eine Atomare check-und-erstellen-Funktion aufrufen). Zumindest in den obigen code die mkdir-Aufruf wird nicht AUSBLEIBEN, wenn aufgerufen spuriously für ein vorhandenes Verzeichnis (wegen der-p
Möglichkeit sowieso).Wenn Sie möchten, eine Atomare check-oder-Funktion erstellen, suchen Sie nicht weiter als mkdir(2)
InformationsquelleAutor Chris J
mkdir -p
erstellt das Verzeichnis, ohne dass ein Fehler, wenn es bereits vorhanden ist.InformationsquelleAutor Sjoerd
InformationsquelleAutor Eugen Rieck
Gut, wenn Sie nur überprüfen Sie das Verzeichnis erstellen wenn es nicht vorhanden ist, Sie könnte genauso gut verwenden:
mkdir -p
wird das Verzeichnis erstellen wenn es nicht vorhanden ist, sonst nichts.InformationsquelleAutor Christian.K
Überprüfen Verzeichnis existiert
Überprüfen Verzeichnis nicht vorhanden
InformationsquelleAutor parapura rajkumar
Dies ist baisc, aber ich denke, es funktioniert. Sie müssen ein paar Variablen, wenn Sie schauen, um eine dynamische Liste zu Durchlaufen und zu überprüfen.
Hoffe, dass das, was Sie suchen...
danke .. Feste
Das ';' ist nicht erforderlich, nachdem die ']', und ']' ist nicht eine schließende Klammer. Im Fall des Befehls '[', wird der trailing -'] ' ist nur ein argument für diesen Befehl. Der Zeilenumbruch dient dem gleichen Zweck wie die semi-colon.
Mein Kommentar war in Bezug auf die erste revision die Frage, die sich nicht mit einem newline nach dem ']', nachdem die "test" - Befehl (oder "Klammern", sorry für missnaming), in welchem Fall das ';' ist erforderlich, bevor die
then
, ist es nicht?ja, entweder einen Zeilenumbruch oder ein ; ist erforderlich. Als ich sah die Frage, die neue an Ort und Stelle war.
InformationsquelleAutor Silvertiger