Was bedeutet die mkdir -p bedeuten in einer script-Datei?
Ich gefunden habe, ein Teil von Skript wie dieses In xx.sh:
BUILD_BOOT=.
mkdir -p $BUILD_BOOT
Kann jemand helfen zu erklären, was das script oben für das Verzeichnis der parameter ist .
?
- versuchen
man mkdir
- Es erzeugt das Verzeichnis angegeben, indem
BUILD_BOOT
und erstellt alle von Ihren Eltern rekursiv, falls Sie nicht existieren. - Nur die Auflistung der Optionen für einen Befehl wird Ihnen sagen/geben Grundidee der option. zB: mkdir --h zeigt: "-p, --parents kein Fehler, wenn vorhanden, stellen Sie die übergeordnete Verzeichnisse wie nötig"
Du musst angemeldet sein, um einen Kommentar abzugeben.
-p
ist die Abkürzung für--parents
- schafft es die gesamte Verzeichnisstruktur bis in das angegebene Verzeichnis.E. g., angenommen, es gibt keine Verzeichnisse im aktuellen Verzeichnis.
Wenn Sie ausführen:
Wird es scheitern, da Sie nicht über eine
a
Unterverzeichnis.Auf der anderen Seite
Schaffen wird, die gesamte Struktur -
a/b/c
mkdir -p
bedeutet: das Verzeichnis erstellen und, wenn erforderlich, alle übergeordneten Verzeichnisse. Die Tatsache, dass dies wenig Sinn macht, wenn der Pfad angegeben ist, wie.
, also das aktuelle Arbeitsverzeichnis nicht ändern. Wahrscheinlich der Zeile, wo der Pfad definiert wird, ist gedacht, um nach Bedarf entsprechend angepasst werden.Im Allgemeinen: sehen Sie in der linux-man-pages für Fragen über Befehle und deren Optionen wie diese:
man mkdir
. Eine große Quelle von Informationen!Sehen
mkdir
.Schafft es alle die temporäre Verzeichnisse auf dem Pfad zum endgültigen Verzeichnis, das nicht bereits vorhanden sind (wie auch die letzten-Verzeichnis), und nicht scheitern, wenn das Ziel-Verzeichnis bereits vorhanden ist.
Im Kontext, ist es sinnlos; wenn die
BUILD_ROOT
ist das aktuelle Verzeichnis, es ist bereits vorhanden. In einer Zeit, dieBUILD_ROOT
muss ein längeren Weg.