In diesem Handbuch erfahren Sie, wie Sie mithilfe der Befehlszeile neue Ordner oder Verzeichnisse in Linux erstellen.
Der Befehl, den Sie zum Erstellen von Verzeichnissen verwenden, ist mkdir. In diesem Artikel erfahren Sie, wie Sie Verzeichnisse unter Linux erstellen können. Außerdem werden alle verfügbaren Schalter behandelt.
So erstellen Sie ein neues Verzeichnis
Die einfachste Methode zum Erstellen eines neuen Verzeichnisses ist wie folgt:
mkdir Wenn Sie beispielsweise ein Verzeichnis mit dem Basisordner "test" erstellen möchten, öffnen Sie ein Terminalfenster und vergewissern Sie sich, dass Sie sich in Ihrem Basisordner befinden (verwenden Sie den Befehl cd ~). Nach dem Erstellen eines neuen Ordners möchten Sie möglicherweise die Berechtigungen festlegen, so dass nur ein bestimmter Benutzer auf den Ordner zugreifen kann oder einige Personen Dateien im Ordner bearbeiten können, andere jedoch nur lesen können. Im letzten Abschnitt habe ich Ihnen gezeigt, wie Sie ein Verzeichnis mit dem Namen test erstellen. Wenn Sie den Befehl ls ausführen, werden Ihnen die Berechtigungen für dieses Verzeichnis angezeigt: ls -lt Die Chancen sind, dass Sie etwas in dieser Richtung haben werden: drwxr-xr-x 2 Eigentümergruppe 4096 9. März 19:34 test Die Bits, die uns interessieren, sinddrwxr-xr-x Besitzerund Gruppe Das d sagt uns, dass der Test ein Verzeichnis ist. Die ersten drei Zeichen nach dem d sind die Eigentümerberechtigungen für das durch den Namen des Besitzers angegebene Verzeichnis: Die nächsten drei Zeichen sind die Gruppenberechtigungen für die durch den Gruppennamen angegebene Datei. Wieder sind die Optionen r, w und x. Das - bedeutet, dass eine Berechtigung fehlt. Im obigen Beispiel kann jeder, der zur Gruppe gehört, auf den Ordner zugreifen und die Dateien lesen, jedoch nicht in den Ordner schreiben. Die letzten drei Zeichen sind die Berechtigungen, die alle Benutzer haben. Wie Sie im obigen Beispiel sehen können, sind diese mit den Gruppenberechtigungen identisch. Um die Berechtigungen für eine Datei oder einen Ordner zu ändern, können Sie das verwendenchmodBefehl. Mit dem Befehl chmod können Sie 3 Zahlen angeben, die die Berechtigungen festlegen: Um eine Mischung von Berechtigungen zu erhalten, addieren Sie die Zahlen zusammen. Um zum Beispiel Lese- und Ausführungsberechtigungen zu erhalten, ist die Zahl 5, für Lese- und Schreibberechtigung die Anzahl 6 und für Lese- und Ausführungsberechtigung 3. Denken Sie daran, dass Sie 3 Nummern als Teil des Befehls chmod angeben müssen. Die erste Zahl ist für die Eigentümerberechtigungen, die zweite Zahl für die Gruppenberechtigung und die letzte Zahl für alle anderen. Um beispielsweise vollständige Berechtigungen für den Eigentümer zu erhalten, lesen Sie die Berechtigungen für die Gruppe und keine Berechtigungen für andere Personen, und geben Sie sie nicht ein. Geben Sie Folgendes ein: chmod 750 test Wenn Sie den Gruppennamen ändern möchten, der einen Ordner besitzt, verwenden Sie den Befehl chgrp. Stellen Sie sich beispielsweise vor, Sie möchten ein Verzeichnis erstellen, auf das alle Steuerberater in Ihrem Unternehmen zugreifen können. Erstellen Sie zunächst die Gruppenkonten, indem Sie Folgendes eingeben: Groupadd-Konten Wenn Sie nicht über die erforderlichen Berechtigungen zum Erstellen einer Gruppe verfügen, müssen Sie möglicherweise sudo verwenden, um zusätzliche Berechtigungen zu erlangen oder mit dem Befehl su zu einem Konto mit gültigen Berechtigungen zu wechseln. Jetzt können Sie die Gruppe für einen Ordner ändern, indem Sie Folgendes eingeben: Chgrp-Konten Zum Beispiel: chgrp konto test Um allen Personen in der Kontengruppe Lese-, Schreib- und Ausführungszugriff sowie den Eigentümer, jedoch für alle anderen Personen schreibgeschützt zu geben, können Sie den folgenden Befehl verwenden: chmod 770 test Um einen Benutzer zur Kontengruppe hinzuzufügen, möchten Sie wahrscheinlich den folgenden Befehl verwenden: usermod -a -G Konten Der obige Befehl hängt die Kontengruppe an die Liste der sekundären Gruppen an, auf die der Benutzer Zugriff hat. Mit dem folgenden Befehl können Sie gleichzeitig ein Verzeichnis erstellen und die Berechtigungen für dieses Verzeichnis festlegen. mkdir -m777 Der obige Befehl erstellt einen Ordner, auf den jeder Zugriff hat. Es ist sehr selten, dass Sie etwas mit dieser Art von Berechtigungen erstellen möchten. Stellen Sie sich vor, Sie möchten eine Verzeichnisstruktur erstellen, aber Sie möchten nicht jeden einzelnen Ordner zusammen mit der Art und Weise erstellen und sich in einem Baum nach unten bewegen. Sie können beispielsweise Ordner für Ihre Musik wie folgt erstellen: Es wäre ärgerlich, den Rock-Ordner erstellen zu müssen, dann den alice cooper- und den queen-Ordner und dann den Rap-Ordner und den dr-Ordner und dann den Jazz-Ordner und dann den Louisjeans-Ordner. Durch Angabe des folgenden Schalters können Sie alle übergeordneten Ordner im laufenden Betrieb erstellen, sofern diese noch nicht vorhanden sind. mkdir -p Um beispielsweise einen der oben aufgeführten Ordner zu erstellen, führen Sie den folgenden Befehl aus: mkdir -p ~ / music / rock / alicecooper Standardmäßig zeigt der Befehl mkdir nicht an, ob das Verzeichnis, das Sie erstellen, erfolgreich erstellt wurde. Wenn keine Fehler angezeigt werden, können Sie davon ausgehen. Wenn Sie eine ausführlichere Ausgabe erhalten möchten, damit Sie wissen, was erstellt wurde, verwenden Sie den folgenden Schalter. mkdir -v Die Ausgabe erfolgt entlang der Zeilen vonmkdir: erstelltes Verzeichnis / Pfad / zu / Verzeichnisname. Manchmal möchten Sie den Befehl "mkdir" als Teil eines Shell-Skripts verwenden. Betrachten wir zum Beispiel ein Skript, das einen Pfad akzeptiert. Wenn das Skript ausgeführt wird, erstellt es den Ordner und fügt eine einzelne Textdatei mit dem Namen "Hallo" hinzu. #! / bin / bash mkdir $ @ cd $ @ touch hallo Die erste Zeile sollte in jedem Skript enthalten sein, das Sie schreiben, und wird verwendet, um zu zeigen, dass es sich tatsächlich um ein BASH-Skript handelt. Der Befehl "mkdir" wird zum Erstellen eines Ordners verwendet. Das "$ @" (auch als Eingabeparameter bezeichnet) am Ende der 2. und 3. Zeile wird durch den Wert ersetzt, den Sie beim Ausführen des Skripts angeben. Der Befehl "cd" wechselt in das von Ihnen angegebene Verzeichnis und schließlich erstellt der touch-Befehl eine leere Datei mit dem Namen "hallo". Sie können das Skript selbst ausprobieren. Folgen Sie dazu diesen Anweisungen: Wenn Sie das Skript ausführen, wird ein Verzeichnis namens "test" erstellt und wenn Sie in dieses Verzeichnis wechseln (CD-Test) und führen Sie eine Verzeichnisliste aus (ls), Sie werden eine einzige Datei mit dem Namen "Hallo" sehen. So weit so gut, aber jetzt versuchen Sie Schritt 7 noch einmal. Es gibt verschiedene Möglichkeiten, das Skript zu verbessern. Wenn der Ordner beispielsweise bereits vorhanden ist, ist es uns nicht besonders wichtig, solange er existiert. #! / bin / bash mkdir -p $ @ cd $ @ touch hallo Wenn Sie den Befehl -p als Teil des Befehls mkdir angeben, wird kein Fehler ausgegeben, wenn der Ordner bereits vorhanden ist. Wenn er jedoch nicht vorhanden ist, wird er erstellt. Wenn dies nicht der Fall ist, erstellt der Berührungsbefehl eine Datei, wenn sie nicht vorhanden ist. Wenn sie jedoch vorhanden ist, ändert sie einfach das Datum und die Uhrzeit, zu denen zuletzt zugegriffen wurde. Stellen Sie sich vor, die Touch-Anweisung wurde durch eine Echo-Anweisung ersetzt, die den Text wie folgt in eine Datei schreibt: #! / bin / bash mkdir -p $ @ cd $ @ echo "hallo" >> hallo Wenn Sie den Befehl "./createhellodirectory.sh test" immer wieder ausführen, wird die Datei "hallo" im Testverzeichnis mit immer mehr Zeilen mit dem Wort "hallo" größer und größer. Nun kann dies vielleicht nicht wie beabsichtigt sein, aber sagen wir jetzt, dass dies nicht die gewünschte Aktion ist. Sie können einen Test schreiben, um sicherzustellen, dass das Verzeichnis nicht vorhanden ist, bevor Sie den Befehl echo wie folgt ausführen. #! / bin / bash mkdir $ @ 2> / dev / null; wenn $? -eq 0; dann cd $ @ echo "hallo" >> hallo exit fi Das obige Skript ist meine bevorzugte Methode für die Erstellung von Ordnern. Der Befehl mkdir erstellt den Ordner, der als Eingabeparameter übergeben wird, aber alle Fehlerausgaben werden an / dev / null gesendet (was im Wesentlichen nirgends bedeutet). In der dritten Zeile wird der Ausgabestatus des vorherigen Befehls überprüft, bei dem es sich um die Anweisung "mkdir" handelt. Wenn er erfolgreich war, führt er die Anweisungen aus, bis die Anweisung "fi" erreicht wird. Dies bedeutet, dass Sie den Ordner erstellen und alle gewünschten Aktionen ausführen können, wenn der Befehl erfolgreich ist. Wenn Sie etwas anderes tun möchten, falls der Befehl nicht erfolgreich war, können Sie einfach eine else-Anweisung wie folgt eingeben: #! / bin / bash mkdir $ @ 2> / dev / null; wenn $? -eq 0; thencd $ @ echo "hallo" >> halloexitelsecd $ @ echo "hallo"> halloexitfi Wenn im obigen Skript die mkdir-Anweisung funktioniert, sendet die Echo-Anweisung das Wort "hallo" an das Ende der Datei mit dem Namen "hallo". Wenn sie nicht existiert, wird eine neue Datei mit dem Wort "hallo" erstellt. Hallo "drin. Dieses Beispiel ist nicht besonders praktisch, da Sie einfach die gleichen Ergebnisse erzielen können, wenn Sie die Echo "Hallo"> Hallo Linie. Das Beispiel soll zeigen, dass Sie den Befehl "mkdir" ausführen können, die Fehlerausgabe ausblenden, den Status des Befehls überprüfen können, um zu sehen, ob er erfolgreich war oder nicht, und dann einen Befehlssatz ausführen, wenn der Befehl "mkdir" verwendet wird war erfolgreich und ein weiterer Satz von Befehlen, falls dies nicht der Fall war. Ändern der Berechtigungen des neuen Verzeichnisses
So erstellen Sie ein Verzeichnis und legen gleichzeitig Berechtigungen fest
Erstellen Sie einen Ordner und alle erforderlichen Eltern
Bestätigung, dass ein Verzeichnis erstellt wurde
Verwenden von "mkdir" in einem Shell-Skript