Lässt es sich mit cremefarbenem Papier, einer Tönung, mehr Kontrast oder größerer Schrift besser lesen? Wählen Sie Ihre Farben und Ihre Schrift, einmalig für alle Seiten.

Kostenlose Lektion

Dateien und die Shell

Nach dieser Lektion: Ich kann in einer Shell mit Dateien und Ordnern arbeiten.

Lektion, 50 Min.12 BefehleLab „Linux im Alltag“: die dreißig Befehle, die Entwickelnde auswendig tippen

Eine Rechnung finden, ganz ohne Maus

Auf dem Server eines Webshops liegen Tausende Dateien. Die Buchhaltung braucht die Rechnungen vom letzten Monat.

Der Server hat keinen Desktop und keine Maus. Sie sehen ein Fenster und einen blinkenden Cursor.

So arbeiten die meisten Server. Sie bewegen sich darauf mit kurzen Befehlen.

Am Ende dieser Lektion

Notiz

Ich kann in einer Shell mit Dateien und Ordnern arbeiten.

Schlüsselwörter

BegriffWas er bedeutetBeispiel
Shelldas Programm, das Ihre Befehle liest und ausführt
Pfaddie Adresse einer Datei oder eines Ordners/home/student/projects
Arbeitsverzeichnisder Ordner, in dem Sie gerade sind
Umleitungdie Ausgabe eines Befehls in eine Datei schreiben>>
Pipedie Ausgabe eines Befehls an den nächsten weitergeben|
Modusdie Zugriffsrechte einer Datei als Buchstaben: wer sie lesen, ändern oder ausführen darfrw-r--r--

Die Zellen, die Lernende ausfüllen, bleiben in dieser Vorschau leer.

Ein Pfad ist die Adresse einer Datei

Die Shell ist immer „in“ einem Ordner. Das ist das Arbeitsverzeichnis. Befehle wirken dort, wenn Sie nichts anderes sagen.

Ein Pfad, der mit / beginnt, ist ein vollständiger Pfad. Er gilt von überall.

Ein Pfad ohne / am Anfang ist ein relativer Pfad. Die Shell sucht ihn im Arbeitsverzeichnis. Zwei Punkte, .., bedeuten den Ordner darüber.

Ein Beispiel: Wohin führt cd

Sie sind inSie tippenSie landen in
/home/studentcd projects/home/student/projects
/home/student/projectscd app/home/student/projects/app
/home/student/projects/appcd ../home/student/projects
/home/student/projectscd /var/log/var/log
/var/logcd projectsEine Fehlermeldung: kein solcher Ordner

Die Zellen, die Lernende ausfüllen, bleiben in dieser Vorschau leer.

Wo bin ich?

Befehl
pwd

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

Was liegt hier?

Befehl
ls

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

Zwei Ordner tiefer gehen

Befehl
cd projects/app

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

Hineinsehen

Befehl
ls

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

Zurück nach Hause

Befehl
cd

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

Ein häufiger Fehler

Warnung

Viele glauben, cd projects funktioniere in jedem Ordner. Der Befehl sucht nur im aktuellen Ordner. Führen Sie zuerst pwd aus, oder tippen Sie einen vollständigen Pfad mit / am Anfang.

mkdir, cp und mv verändern etwas

mkdir legt einen Ordner an. cp kopiert eine Datei, das Original bleibt liegen. mv verschiebt eine Datei. Geben Sie ihr im selben Ordner einen neuen Namen, benennt mv sie um.

rm löscht eine Datei. Auf einem Server gibt es keinen Papierkorb. Was gelöscht ist, ist weg.

Führen Sie die nächsten vier Befehle der Reihe nach aus.

Einen Ordner anlegen

Befehl
mkdir -p ladendaten

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

Eine Datei hineinkopieren

Befehl
cp projects/docs/notes.txt ladendaten/notizen.txt

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

Die Kopie umbenennen

Befehl
mv ladendaten/notizen.txt ladendaten/aufgaben.txt

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

Den Ordner prüfen

Befehl
ls ladendaten

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

Umleitung und Pipe verbinden Befehle

Ein Befehl zeigt seine Antwort auf dem Bildschirm. Eine Umleitung schreibt sie stattdessen in eine Datei. > ersetzt die Datei. >> hängt am Ende an.

Eine Pipe, |, gibt die Antwort an den nächsten Befehl weiter. ls | wc -l listet Namen und zählt dann die Zeilen.

Eine Zeile anhängen

Befehl
echo "Bestellung 2043 versendet" >> ladendaten/aufgaben.txt

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

Die Datei lesen

Befehl
cat ladendaten/aufgaben.txt

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

Dateien in einem Ordner zählen

Befehl
ls projects/app | wc -l

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

Noch ein häufiger Fehler

Warnung

Viele halten > und >> für dasselbe. > wirft den alten Inhalt weg und beginnt neu. >> behält ihn und hängt an. Nehmen Sie >>, außer Sie wollen neu beginnen.

Ein Beispiel: ein Modus als drei Ziffern

BuchstabenBesitzerGruppeAndereZiffern
rw-r--r--rw- = 4+2 = 6r-- = 4r-- = 4644
rwxr-xr--rwx = 4+2+1 = 7r-x = 4+1 = 5r-- = 4754
rwx------rwx = 7--- = 0--- = 0700

Die Zellen, die Lernende ausfüllen, bleiben in dieser Vorschau leer.

Eine Buchstabengruppe als Zahl

Code: python
# Eine Dreiergruppe von Buchstaben, ausgerechnet.
gruppe = "r-x"
summe = 0
if gruppe[0] == "r":
    summe = summe + 4
if gruppe[1] == "w":
    summe = summe + 2
if gruppe[2] == "x":
    summe = summe + 1
print(summe)
# Ändern Sie gruppe auf "rw-" und starten Sie noch einmal.

Weiterführend

Tippen Sie diese Befehle selbst. Legen Sie in ladendaten einen Ordner rechnungen an. Erzeugen Sie darin mit einem einzigen Befehl drei leere Dateien: touch nimmt mehrere Namen.

Zählen Sie die Dateien dann mit einer Pipe, und schreiben Sie die Zahl mit > in ladendaten/anzahl.txt. Sagen Sie voraus, was cat ladendaten/anzahl.txt ausgibt, bevor Sie es ausführen.

Über dieses Lab und seinen Quellcode: Lab „Linux im Alltag“: die dreißig Befehle, die Entwickelnde auswendig tippen

Sie unterrichten eine Gruppe? Weisen Sie dieses Modul Ihren Studierenden zu, mit Handbuch für Lehrende, automatisch geprüften Aufgaben und einem Lab für jede Person.