0%

Die nötigen Grundlagen der Kommandozeile · Übung

Dateien und Verzeichnisse erstellen und verschieben

Auflisten und Lesen verändern deine Projektdateien nicht. Diese beiden Befehle tun das. Führe zuerst pwd aus und prüfe, ob es /workspace meldet. Falls du seit der vorherigen Lektion noch in data bist, führe zunächst cd /workspace aus.

mkdir erstellt ein Verzeichnis:

mkdir notes

mv verschiebt eine Datei an einen neuen Pfad:

mv README.txt notes/

Eine Datei zu verschieben bedeutet, ihren Pfad zu ändern

Je nach Verwendung sieht mv wie zwei verschiedene Befehle aus. Es lohnt sich zu verstehen, dass es nur einer ist.

mv README.txt notes/ verschiebt die Datei in ein Verzeichnis. mv README.txt READ_ME.txt benennt sie um. Das wirkt wie zwei unterschiedliche Vorgänge, doch beide geben demselben Verzeichniseintrag einen neuen Pfad. Umbenennen und Verschieben sind derselbe Vorgang aus unterschiedlichen Blickwinkeln.

Der abschließende Schrägstrich in notes/ ist nicht erforderlich, aber eine gute Gewohnheit. Er sagt: „Dieses Ziel ist ein Verzeichnis.“ Wenn du dich beim Verzeichnisnamen vertippt hast, schlägt der Befehl dadurch fehl, statt deine Datei stillschweigend ungewollt umzubenennen.

Jetzt bist du dran

Im Stammverzeichnis des Projekts liegt eine README, und bald kommen weitere Dateien hinzu. Gib ihr einen eigenen Platz.

Im Terminal:

  1. Erstelle im Projektstamm ein Verzeichnis namens notes.

  2. Verschiebe README.txt dorthin, sodass die Datei schließlich unter notes/README.txt liegt.

Lass alles andere an seinem Platz. report.py und data/books.txt sollen genau dort bleiben, wo sie sind.

Wenn du fertig bist, führe zur Kontrolle ls und ls notes aus und drücke anschließend Check my work.

Nach jedem Schritt mit ls nachzusehen ist keine Pedanterie. So stellst du fest, ob deine Eingabe das Gewünschte bewirkt hat, während du dich noch an die Eingabe erinnerst. Das Verzeichnis notes wird zusammen mit dem restlichen Projekt gespeichert. Es ist also in der nächsten Lektion noch da, wenn du etwas darin ablegst.

Warum gibt es für Umbenennen und Verschieben denselben Befehl?