Erstellen Sie rekursiv eine geschachtelte Verzeichnisstruktur und alle Unterordner mit einem einzigen Befehl

Das Erstellen einer Reihe von ineinander verschachtelten Verzeichnissen kann sofort über die Befehlszeile erfolgen. Dies macht es sehr einfach, sofort und rekursiv eine komplexe Verzeichnisstruktur von Ordnern in Unterordnern von Unterordnern zu erstellen, ohne manuell in jedes Verzeichnis navigieren zu müssen, um ein neues Verzeichnis zu erstellen, dann wieder zu diesem Unterverzeichnis zu navigieren, um ein anderes Verzeichnis zu erstellen und so weiter . Stattdessen wird ein Befehlszeilentrick den vollständigen Verzeichnispfad auf einen Schlag erzeugen.

Um eine verschachtelte Verzeichnisstruktur zu erstellen, müssen Sie den bekannten mkdir-Befehl verwenden, der routinemäßig zum Erstellen eines einzelnen neuen Ordners verwendet wird, jedoch mit dem Zusatz "-p", um einen vollständigen Pfad zum Erstellen anzugeben. Wenn Sie das selbst ausprobieren möchten, starten Sie die Terminal-App wie im Ordner / Applications / Utilities / und sehen Sie, wie Sie mithilfe von mkdir -p eine Reihe von Verzeichnissen in einer einzigen Befehlszeile mit einem angegebenen Pfad erstellen können.

Erstellen einer Verzeichnisstruktur rekursiv durch Angeben eines Pfades

Bei der einfachsten Form geben Sie einfach den Pfad wie folgt für mkdir an:

mkdir -p /path/to/make/

Das Flag -p stellt sicher, dass alle Unterordner rekursiv und an der richtigen Stelle erstellt werden.

Nehmen wir als Beispiel an, dass der verschachtelte Verzeichnispfad, den wir erstellen möchten, "/ Erstellen / Diese / Ordner / Innerhalb / Jedes / Anderes /" ist und keiner dieser Ordner oder Unterordner derzeit existiert. Um sie alle sofort zu erstellen, verwenden Sie einfach die folgende Befehlszeichenfolge:

mkdir -p ~/Create/These/Folders/Within/Each/Other/

Dadurch wird der "Create" -Ordner zum übergeordneten Verzeichnis, gefolgt von der vollständigen Reihe von "/ This / Folders / Within / Each / Other /" als entsprechend verschachtelte untergeordnete Verzeichnisse.

Sie können einen Pfad angeben, den Sie erstellen möchten, und er erstellt sofort die übergeordneten und alle untergeordneten Zwischenverzeichnisse.

Überprüfen, ob das Verzeichnis und alle Unterordner erstellt wurden

Um schnell zu überprüfen, ob alle Verzeichnisse erstellt wurden und alles wie gewünscht funktioniert, indem Sie den Befehl 'find' verwenden:

find (parent directory) -type d -print

Mit dem obigen Beispiel würde der Befehl find wie folgt aussehen:

find ~/Create/ -type d -print

Die Ausgabe dieses Befehls würde ungefähr wie folgt aussehen und rekursiv aus dem übergeordneten Verzeichnis in alle untergeordneten Ordner auflisten:

$ find ~/Create -type d -print
/Create
/Create/These
/Create/These/Folders
/Create/These/Folders/Within
/Create/These/Folders/Within/Each
/Create/These/Folders/Within/Each/Other

Natürlich können Sie auch den Finder aufrufen, um zu überprüfen, ob eine komplexe Ordnerstruktur erstellt wurde, vielleicht am einfachsten aus der "Listen" -Ansicht und dann die Dreiecke verwenden, um jedes Unterverzeichnis rekursiv zu öffnen und seinen Inhalt anzuzeigen folgendes:

(Beachten Sie, dass die .DS_Store Dateien angezeigt werden, da alle versteckten Dateien sichtbar sind)

Dies ist ein wirklich nützlicher Tipp, den wir vor einiger Zeit als Teil einer Handvoll nützlicher Befehlszeilentricks behandelt haben, aber angesichts der Bequemlichkeit ist es eine eigene Überlegung wert.

Und ja, die Verwendung des Terminals ist bei weitem der schnellste Weg, dies zu erreichen, da es keinen ähnlichen Trick für den Mac-Finder gibt, obwohl man theoretisch verschachtelte Verzeichniserstellung durch die Automator-App in OS X automatisieren könnte, wenn dies gewünscht wird. Der mkdir-Befehl funktioniert unter Mac OS X und Linux genauso, sodass Sie ihn bei Bedarf plattformübergreifend verwenden können. Willst du noch mehr Kommandozeilentricks? Wir geben dir Deckung.