Erstellen Sie rekursiv eine verschachtelte Verzeichnisstruktur & Alle Unterordner mit einem einzigen Befehl

Anonim

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 erneut zu diesem Unterverzeichnis zu navigieren, um ein weiteres Verzeichnis zu erstellen, und so weiter .Stattdessen erstellt ein Befehlszeilentrick den vollständigen Zwischenverzeichnispfad auf einen Schlag.

Der einfache Aufbau einer verschachtelten Verzeichnisstruktur erfordert die Verwendung des bekannten mkdir-Befehls, der routinemäßig verwendet wird, um einen einzelnen neuen Ordner zu erstellen, jedoch mit dem Anhang des -p-Flags, um einen vollständigen Pfad anzugeben erschaffen. Wenn Sie dies selbst ausprobieren möchten, starten Sie die Terminal-App aus dem Ordner /Applications/Utilities/ und folgen Sie den Anweisungen, um zu sehen, wie Sie mkdir -p verwenden, um eine Reihe von Verzeichnissen in einer einzigen Befehlszeile unter Verwendung eines angegebenen Pfads zu erstellen.

Rekursives Erstellen einer Verzeichnisstruktur durch Angabe eines Pfads

In der einfachsten Form geben Sie einfach den Pfad wie bei 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, der verschachtelte Verzeichnispfad, den wir erstellen möchten, lautet „/Create/These/Folders/Within/Each/Other/“ und keiner dieser Ordner oder Unterordner existiert derzeit. Um sie alle sofort zu erstellen, verwenden Sie einfach die folgende Befehlszeichenfolge:

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

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

Sie können einen beliebig langen Pfad angeben, der erstellt werden soll, und es werden sofort die übergeordneten und alle untergeordneten Zwischenverzeichnisse erstellt.

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

Um schnell zu überprüfen, ob alle Verzeichnisse erstellt wurden und alles wie beabsichtigt funktioniert, verwenden Sie den Befehl „Suchen“ wie folgt:

find (übergeordnetes Verzeichnis) -type d -print

Um das obige Beispiel erneut zu verwenden, würde der Suchbefehl wie folgt aussehen:

find ~/Create/ -type d -print

Die Ausgabe dieses Befehls würde etwa wie folgt aussehen und rekursiv vom übergeordneten Verzeichnis zu allen untergeordneten Ordnern auflisten:

$ find ~/Create -type d -print /Create /Create/These /Create/These/Folders /Create/These/Folders/Within /Create/These /Ordner/Innerhalb/Jeder /Erstellen/Diese/Ordner/Innerhalb/Jeder/Andere

Natürlich können Sie sich auch an den Finder wenden, um zu überprüfen, ob eine komplexe Ordnerstruktur aufgebaut wurde, vielleicht am einfachsten in der „Listen“-Ansicht zu sehen und dann die Dreiecke zu verwenden, um rekursiv jedes Unterverzeichnis zu öffnen und Zeigen Sie seinen Inh alt an und sehen Sie in etwa so aus:

(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 in Anbetracht der Bequemlichkeit lohnt es sich, ihn für sich allein zu behandeln.

Und ja, die Verwendung des Terminals ist bei weitem der schnellste Weg, dies zu erreichen, da es keinen ähnlichen Trick speziell für den Mac Finder gibt, obwohl man theoretisch die Erstellung verschachtelter Verzeichnisse über die Automator-App im Betriebssystem automatisieren könnte X, falls gewünscht. Für das, was es wert ist, funktioniert der Befehl mkdir sowohl unter Mac OS X als auch unter Linux gleich, sodass Sie ihn bei Bedarf plattformübergreifend verwenden können. Willst du noch mehr Kommandozeilen-Tricks? Wir geben dir Deckung.

Erstellen Sie rekursiv eine verschachtelte Verzeichnisstruktur & Alle Unterordner mit einem einzigen Befehl