Einführung
Willkommen zum Lab „Grundlegende Dateioperationen unter Linux“! Unter Linux wird fast alles als Datei behandelt, weshalb Dateioperationen eine grundlegende Fähigkeit für die Arbeit mit dem System darstellen. Dieses Lab führt Sie durch die gängigsten Befehle zur Verwaltung von Dateien und Verzeichnissen und hilft Ihnen dabei, sich sicherer in Ihrem Linux-System zu bewegen und dieses zu organisieren.
Die Arbeitsumgebung verstehen
Unter Linux hat jeder Benutzer normalerweise ein „Home-Verzeichnis“, das durch ~ dargestellt wird. In dieser Lab-Umgebung starten wir jedoch im Verzeichnis /home/labex/project, unserem Standard-Arbeitsverzeichnis.
Öffnen Sie bitte zuerst ein Terminal auf dem Desktop ODER wechseln Sie zum Terminal-Tab in der Lab-Umgebung.

Beginnen wir damit, unseren aktuellen Standort zu ermitteln:
pwd
pwd steht für „print working directory“ (Arbeitsverzeichnis ausgeben). Es zeigt Ihren aktuellen Standort im Dateisystem an. Dieser Befehl ist entscheidend, um sich in der Linux-Dateistruktur zu orientieren. Als Ausgabe sollten Sie /home/labex/project sehen.
Lassen Sie uns nun die Beziehung zwischen dem aktuellen Verzeichnis und dem Home-Verzeichnis untersuchen:
echo ~
Hinweis: Falls Sie das
~-Symbol aufgrund unterschiedlicher Tastaturlayouts in bestimmten Ländern nicht im Desktop-Terminal eingeben können, versuchen Sie, in den eigenständigen Terminal-Tab oben links in der VM-Oberfläche zu wechseln.
Dieser Befehl zeigt den Pfad zu Ihrem Home-Verzeichnis an, der /home/labex lauten sollte.
Um den Inhalt Ihres aktuellen Verzeichnisses zu sehen, verwenden Sie:
ls
Dies listet die Dateien und Verzeichnisse in Ihrem aktuellen Arbeitsverzeichnis (/home/labex/project) auf.
Überprüfen wir auch den Inhalt Ihres Home-Verzeichnisses:
ls ~
Dieser Befehl listet den Inhalt Ihres Home-Verzeichnisses auf, der sich von Ihrem aktuellen Arbeitsverzeichnis unterscheiden kann.
Den Unterschied zwischen Ihrem aktuellen Arbeitsverzeichnis und Ihrem Home-Verzeichnis zu verstehen, ist wichtig, um effektiv durch das Linux-Dateisystem zu navigieren.
Navigation im Dateisystem
Linux verwendet ein sogenanntes „hierarchisches Dateisystem“. Stellen Sie es sich wie einen großen Baum mit Ästen vor. Der Hauptstamm wird als „Wurzelverzeichnis“ (Root-Verzeichnis) bezeichnet und durch einen einzelnen Schrägstrich / dargestellt. Alle anderen Verzeichnisse und Dateien zweigen von dieser Wurzel ab.
Lassen Sie uns erkunden, wie man sich in dieser baumartigen Struktur bewegt:
- Überprüfen Sie Ihren aktuellen Standort:
pwd
Dies sollte /home/labex/project anzeigen. Falls nicht, befinden Sie sich möglicherweise in einem anderen Verzeichnis. Verwenden Sie cd /home/labex/project, um zum Ausgangspunkt zurückzukehren.
- Zeigen Sie den Inhalt Ihres aktuellen Verzeichnisses an:
ls
Dies listet alle Dateien und Ordner an Ihrem aktuellen Standort auf. /home/labex/project ist leer, daher werden Sie nichts sehen.
- Gehen Sie eine Ebene höher in das übergeordnete Verzeichnis:
cd ..
Die .. stehen für „das Verzeichnis darüber“. Führen Sie nach diesem Befehl erneut pwd aus. Sie sollten sich nun in /home/labex befinden.
- Kehren Sie zu Ihrem Projektverzeichnis zurück:
cd project
Dies bringt Sie zurück nach /home/labex/project.
- Gehen Sie in Ihr Home-Verzeichnis:
cd ~
Das ~ ist eine Abkürzung für Ihr Home-Verzeichnis. Führen Sie pwd aus, um zu bestätigen, dass Sie sich in /home/labex befinden.
- Kehren Sie mit einem absoluten Pfad zum Projektverzeichnis zurück:
cd /home/labex/project
Dies wird als „absoluter Pfad“ bezeichnet, da er bei der Wurzel (/) beginnt und den vollständigen Speicherort angibt.
Dateien erstellen und Verzeichnisinhalte auflisten
Nachdem wir nun wissen, wie man navigiert, erstellen wir einige Dateien und erkunden, wie man Verzeichnisinhalte auflistet.
Stellen Sie zunächst sicher, dass Sie sich im Verzeichnis /home/labex/project befinden:
cd /home/labex/project
- Erstellen wir ein paar Dateien:
touch file1.txt
Der Befehl touch wird verwendet, um eine leere Datei zu erstellen. Wenn die Datei bereits existiert, aktualisiert er den Zeitstempel der Datei, ohne ihren Inhalt zu ändern. Es ist eine einfache Methode, um neue, leere Dateien zu erstellen.
echo "Hello, Linux" > file2.txt
Dieser Befehl bewirkt zwei Dinge:
echoist ein Befehl, der Text ausgibt.- Das Symbol
>leitet die Ausgabe vonechoin eine Datei namensfile2.txtum. Wenn die Datei nicht existiert, wird sie erstellt. Wenn sie bereits existiert, wird ihr Inhalt überschrieben.
echo "Hidden file" > .hiddenfile
Dies erstellt eine versteckte Datei. Unter Linux gilt jeder Datei- oder Verzeichnisname, der mit einem Punkt (.) beginnt, als versteckt.
- Erstellen wir nun ein Verzeichnis:
mkdir testdir
Der Befehl mkdir (kurz für „make directory“) erstellt ein neues Verzeichnis namens testdir.
- Einfache Auflistung:
ls

Dies zeigt den Inhalt Ihres aktuellen Verzeichnisses. Sie sollten file1.txt, file2.txt und testdir sehen.
- Detaillierte Auflistung:
ls -l
Die Option -l (das ist ein kleines L, nicht die Zahl 1) bietet eine „lange“ Format-Auflistung. Sie sehen zusätzliche Details wie Dateiberechtigungen, Besitzer, Größe und Änderungsdatum.
- Versteckte Dateien anzeigen:
ls -a
Dies zeigt alle Dateien an, einschließlich der versteckten .hiddenfile, die wir erstellt haben.
- Optionen kombinieren:
ls -la
Dies kombiniert das lange Format (-l) mit der Anzeige aller Dateien (-a).
- Inhalt eines bestimmten Verzeichnisses auflisten:
ls -l testdir
Dies listet den Inhalt des Verzeichnisses testdir auf (das zu diesem Zeitpunkt leer sein sollte).
Die Auflistungsbefehle in diesem Schritt dienen der praktischen Übung und visuellen Bestätigung. Ihr Fortschritt wird dadurch bewertet, dass überprüft wird, ob die erforderlichen Dateien und das Verzeichnis korrekt erstellt wurden.
Dateien und Verzeichnisse kopieren
Nachdem wir nun einige Dateien haben, mit denen wir arbeiten können, lernen wir, wie man sie kopiert:
- Eine Datei kopieren:
cp file1.txt file1_copy.txt
Dies erstellt eine Kopie von file1.txt mit dem Namen file1_copy.txt im aktuellen Verzeichnis.
Überprüfen wir die Kopie:
ls
- Eine Datei in ein anderes Verzeichnis kopieren:
cp file2.txt testdir/
Dies kopiert file2.txt in das Verzeichnis testdir.
- Ein Verzeichnis kopieren:
cp -r testdir testdir_copy
Die Option -r steht für „rekursiv“. Sie ist beim Kopieren von Verzeichnissen erforderlich, um sicherzustellen, dass der gesamte Inhalt kopiert wird.
- Unsere Kopien überprüfen:
ls
ls testdir
ls testdir_copy

Dateien und Verzeichnisse verschieben und umbenennen
Der Befehl mv wird unter Linux sowohl zum Verschieben als auch zum Umbenennen verwendet:
- Eine Datei umbenennen:
mv file1.txt newname.txt
Dies benennt file1.txt in newname.txt um.
- Eine Datei in ein Verzeichnis verschieben:
mv newname.txt testdir/
Dies verschiebt newname.txt in das Verzeichnis testdir.
- Ein Verzeichnis umbenennen:
mv testdir_copy new_testdir
Dies benennt testdir_copy in new_testdir um.
- Verschieben und Umbenennen in einem Befehl:
mv testdir/newname.txt ./original_file1.txt
Dies verschiebt newname.txt aus testdir heraus und benennt es im aktuellen Verzeichnis in original_file1.txt um.
- Unsere Änderungen überprüfen:
ls
ls testdir

Dateien und Verzeichnisse entfernen
Das Entfernen von Dateien und Verzeichnissen ist ein mächtiger Vorgang. Im Gegensatz zu grafischen Oberflächen gibt es in der Befehlszeile oft keinen „Papierkorb“. Löschvorgänge mit rm sind in der Regel dauerhaft. Überprüfen Sie Ihre Befehle immer doppelt, bevor Sie sie ausführen!
Lassen Sie uns die von uns erstellten Dateien und Verzeichnisse aufräumen. Stellen Sie sicher, dass Sie sich im Verzeichnis /home/labex/project befinden.
pwd
ls -a
Sie sollten Dateien wie original_file1.txt, .hiddenfile, file2.txt und Verzeichnisse wie testdir, new_testdir sehen.
-rw-rw-r-- 1 labex labex 12 May 3 08:44 .hiddenfile
-rw-rw-r-- 1 labex labex 0 May 3 08:45 file1_copy.txt
-rw-rw-r-- 1 labex labex 13 May 3 08:44 file2.txt
drwxrwxr-x 2 labex labex 23 May 3 08:45 new_testdir
-rw-rw-r-- 1 labex labex 0 May 3 08:44 original_file1.txt
drwxrwxr-x 2 labex labex 23 May 3 08:45 testdir
Eine einzelne Datei entfernen:
rm original_file1.txtDer Befehl
rm(kurz für „remove“) löscht Dateien. Überprüfen wir das:lsoriginal_file1.txtsollte nun weg sein.Interaktiv entfernen (sicherer):
Versuchen wir,
file2.txtzu entfernen, diesmal jedoch mit dem interaktiven Flag-i:rm -i file2.txtDie Option
-ifragt Sie vor dem Löschen jeder Datei um Bestätigung. Geben Siey(für yes) ein und drücken Sie die Eingabetaste, um das Löschen zu bestätigen. Wenn Sienoder etwas anderes eingeben, wird die Datei nicht gelöscht.lsWenn Sie bestätigt haben, ist
file2.txtweg.Ein leeres Verzeichnis entfernen:
Erinnern Sie sich an
new_testdir, das wir durch Umbenennen vontestdir_copyerstellt haben? Prüfen wir, ob es leer ist:ls new_testdirWenn es leer ist (keine Dateien anzeigt), können wir es mit
rmdirentfernen:rmdir new_testdirrmdir(remove directory) funktioniert nur bei leeren Verzeichnissen.lsnew_testdirkann nicht entfernt werden, da es nicht leer ist.Versuch, ein nicht leeres Verzeichnis zu entfernen:
Versuchen wir nun
rmdirbeitestdir, das nochfile2.txtenthält (in Schritt 4 kopiert):ls testdir rmdir testdirSie werden wahrscheinlich eine Fehlermeldung wie
rmdir: failed to remove 'testdir': Directory not emptysehen. Dies ist zu erwarten, darmdirkeine Verzeichnisse entfernen kann, die Dateien oder andere Verzeichnisse enthalten.Ein Verzeichnis und seinen Inhalt entfernen (rekursiv):
Um ein Verzeichnis zu entfernen, das nicht leer ist, müssen wir
rmmit der Option-r(rekursiv) verwenden:rm -r testdirDieser Befehl entfernt das Verzeichnis
testdirund alles darin. Verwenden Sie diesen Befehl mit Vorsicht.lstestdirsollte nun weg sein.Erzwungenes Entfernen (mit äußerster Vorsicht verwenden):
Manchmal möchten Sie Dateien entfernen, ohne dazu aufgefordert zu werden, selbst wenn sie schreibgeschützt sind (obwohl wir hier keine haben). Die Option
-f(force) bewirkt dies.Entfernen wir unsere versteckte Datei:
rm .hiddenfile ls -aKombinieren wir nun
-rund-f. Der Befehlrm -rfist extrem mächtig und potenziell gefährlich. Er entfernt Verzeichnisse rekursiv (-r) und erzwingt das Entfernen ohne Nachfrage (-f).!!! GEFAHRENZONE !!! Seien Sie sich ABSOLUT SICHER, was Sie löschen, bevor Sie
rm -rfausführen. Ein kleiner Tippfehler könnte kritische Systemdateien oder Ihre persönlichen Daten löschen. Es gibt kein Rückgängigmachen. Zum Beispiel könnterm -rf /versuchen, Ihr gesamtes System zu löschen (falls Sie die Berechtigungen haben). Überprüfen Sie immer den Pfad.Erstellen wir ein temporäres Verzeichnis und eine Datei zur Demonstration (sicher):
mkdir temp_dir touch temp_dir/temp_file.txt ls -R temp_dirHinweis: Sie bemerken vielleicht, dass wir
-R(groß) beilsverwendet haben, anstatt-r(klein), wie wir es beicpundrmgetan haben. Dies ist nicht nur ein Unterschied in der Groß-/Kleinschreibung – es sind völlig unterschiedliche Optionen! Beilsbedeutet-R„rekursive Auflistung“ (Unterverzeichnisse auflisten), während-r„umgekehrte Sortierreihenfolge“ bedeutet. Beicpundrmist die rekursive Option-r(klein). Überprüfen Sie immer das Handbuch (man command), um die spezifischen Optionen jedes Befehls zu verstehen.Entfernen wir es nun mit Gewalt:
rm -rf temp_dirÜberprüfen Sie das Entfernen:
lstemp_dirsollte weg sein.
Denken Sie daran: In der Linux-Befehlszeile sind gelöschte Dateien im Allgemeinen für immer weg. Verwenden Sie rm vorsichtig!
Zusammenfassung
Herzlichen Glückwunsch! Sie haben die wesentlichen Dateioperationen unter Linux kennengelernt:
- Navigation im Dateisystem mit
cdundpwd - Erstellen von Dateien und Verzeichnissen mit
touchundmkdir - Auflisten von Inhalten mit
lsund seinen Optionen - Kopieren von Dateien und Verzeichnissen mit
cp - Verschieben und Umbenennen mit
mv - Entfernen von Dateien und Verzeichnissen mit
rmundrmdir
Diese Befehle bilden die Grundlage der Dateiverwaltung unter Linux. Mit etwas Übung werden Sie darin geübt sein, Ihre Dateien und Verzeichnisse über die Befehlszeile zu verwalten.
Denken Sie daran, diese Befehle vorsichtig zu verwenden, insbesondere rm, da es Dateien und Verzeichnisse dauerhaft ohne Wiederherstellungsmöglichkeit löscht.
Während Sie Ihre Linux-Reise fortsetzen, erkunden Sie die Man-Pages (z. B. man ls), um mehr über jeden Befehl und seine Optionen zu erfahren. Viel Spaß beim Erkunden!



