Thema 3
Arbeit in der Konsole
Die Konsole (auch Terminal genannt) ist ein Fenster, in dem du dem Computer Befehle tippst, statt zu klicken. Ihr großer Wert: Sie erledigt Wiederholungen in Sekunden und schaut auch in Dateien hinein – nicht nur auf ihre Namen. Wir arbeiten auf dem LernStick.
Zuerst: die Spielwiese aufbauen
Alles passiert in einem Wegwerf-Ordner namens ~/konsole-uebung.
Baue ihn mit diesem Befehl auf – in die Konsole kopieren, Enter drücken:
curl -s https://informatik9.mhprivatecloude.com/downloads/setup-konsole.sh | bash
Geht etwas kaputt? Denselben Befehl einfach nochmal – nach 5 Sekunden ist alles wieder da.
Eine Regel
Wir arbeiten nur im Übungsordner ~/konsole-uebung. Dort kann
nichts kaputtgehen, was uns wehtut.
Schritt 1
Ankommen in der Konsole
Die ersten Befehle verändern nichts – sie zeigen dir nur, wo du bist und was da ist. Damit kann nichts schiefgehen.
| Befehl | Was er macht |
|---|---|
pwd | zeigt, wo du gerade bist (der Pfad) |
ls | listet auf, was im Ordner liegt |
ls -l | dasselbe mit Details (Größe, Datum) |
cd ordner | geht in einen Ordner hinein |
cd .. | geht einen Ordner zurück |
cat datei | zeigt den Inhalt einer Datei an |
Zaubertrick: die Tab-Taste
Tippe die ersten Buchstaben eines Namens und drücke Tab – die Konsole vervollständigt ihn selbst. Das spart Tippen und Tippfehler.
Aufgabe 1 – Orientierung
- Wechsle in die Spielwiese:
cd ~/konsole-uebung - Wo bist du? (
pwd) Und was liegt hier? (ls) - Lies die Datei
notiz.txtmitcat. - Geh in den Ordner
briefe, liste seinen Inhalt und geh wieder zurück.
Lösung anzeigen
cd ~/konsole-uebung
pwd
ls
cat notiz.txt
cd briefe
ls
cd ..
Schritt 2
Ein Befehl, hundert Dateien
Jetzt kommt der Wow-Moment: Was du von Hand hundertmal klicken müsstest, macht die Konsole in einem einzigen Befehl.
| Befehl | Was er macht |
|---|---|
mkdir ordner | legt einen neuen Ordner an |
touch datei.txt | legt eine leere Datei an |
{1..100} | steht für die Zahlenreihe 1, 2, 3 … 100 |
Zusammen ergibt das echte Magie: touch bild{1..100}.txt erzeugt 100
Dateien in einer Sekunde. Nachzählen kannst du mit ls | wc -l.
Aufgabe 2 – Massenware
- Lege einen Ordner an und geh hinein:
mkdir test, danncd test. - Erzeuge 30 Dateien auf einmal:
touch aufgabe{1..30}.txt - Prüfe mit
lsund zähle mitls | wc -l. - Lege zusätzlich 10 Ordner an:
mkdir ordner{1..10}
Lösung anzeigen
mkdir test
cd test
touch aufgabe{1..30}.txt
ls
ls | wc -l # zeigt 30
mkdir ordner{1..10}
Warum das mächtig ist
Wiederholung ist Arbeit für die Konsole, nicht für dich. Überall, wo hundert gleichartige Dinge anfallen (Fotos, Rechnungen, Messwerte …), spielt sie ihre Stärke aus.
Schritt 3
In Dateien schauen: Suchen & Zählen
Die zweite Superkraft der Konsole: Sie sieht in Dateien hinein und verkettet Werkzeuge wie Legosteine.
| Befehl | Was er macht |
|---|---|
grep wort *.txt | sucht das Wort in allen Textdateien |
grep -r wort . | sucht auch in allen Unterordnern |
wc -l datei | zählt die Zeilen einer Datei |
| (Pipe) | leitet die Ausgabe in den nächsten Befehl |
Der Lego-Trick: die Pipe
Das Zeichen | reicht das Ergebnis des einen Befehls an den nächsten weiter.
ls | wc -l zählt so die Dateien, grep -l geheim *.txt | wc -l zählt,
in wie vielen Dateien ein Wort vorkommt.
Aufgabe 3 – Schatzsuche
Wechsle zuerst in den Ordner mit den 50 Textdateien: cd ~/konsole-uebung/texte
- In welcher der 50 Dateien versteckt sich das Wort Schatz?
- Wie viele Dateien enthalten das Wort geheim?
- Finde das Passwort – es liegt in einem Unterordner.
- Wie viele Zeilen hat die Datei
../briefe/brief5.txt?
Lösung anzeigen
grep Schatz *.txt # text37.txt
grep -l geheim *.txt | wc -l # 4
grep -r Passwort . # ./archiv/hinweis.txt: sonnenblume
wc -l ../briefe/brief5.txt # 11
Schritt 4
Parcours – alles zusammen
Jetzt kombinierst du selbst. Jede Aufgabe ist mit einem Befehl lösbar.
Aufgabe 4 – Parcours
- Wie viele Dateien liegen im Ordner
texte? (Tipp:lsund Pipe) - Erzeuge im Ordner
bilder50 Dateienurlaub{1..50}.jpg. - Zähle, wie viele Dateien im Ordner
bilder„urlaub" im Namen tragen. - Räume deine 50 selbst erzeugten Dateien wieder auf.
Lösung anzeigen
ls ~/konsole-uebung/texte | wc -l
cd ~/konsole-uebung/bilder
touch urlaub{1..50}.jpg
ls | grep urlaub | wc -l # 50
rm urlaub{1..50}.jpg # nur im Uebungsordner!
Vorsicht mit rm
rm löscht Dateien endgültig – ohne Papierkorb, ohne Rückfrage.
Deshalb benutzen wir es nur in unserer Spielwiese, um eigene Übungsdateien
aufzuräumen. Im Zweifel: erst überlegen, dann Enter.
Vertiefung · Teil 1
Ein ganzes Buch in einer Sekunde
Bisher hast du einzelne Dateien durchsucht. Jetzt kommt die volle Wucht: ein kompletter Roman – Goethes „Faust" mit über 30.000 Wörtern – ausgewertet in einem Augenblick. Von Hand müsstest du stundenlang zählen; der Rechner braucht einen Wimpernschlag.
Buch laden
Hol dir den Text in deinen aktuellen Ordner:
wget -q https://informatik9.mhprivatecloude.com/downloads/faust.txt
Prüfe mit ls, dass faust.txt da ist.
| Befehl | Was er macht |
|---|---|
wc -w faust.txt | zählt alle Wörter |
wc -l faust.txt | zählt alle Zeilen |
grep -c Faust faust.txt | zählt die Zeilen, in denen „Faust" steht |
Der große Trick: die häufigsten Wörter
Diese Kette zerlegt den ganzen Text in einzelne Wörter, sortiert sie und zählt, welche am häufigsten vorkommen:
cat faust.txt | tr ' ' '\n' | sort | uniq -c | sort -rn | head
Jedes Glied macht eine kleine Sache – zusammen sind sie mächtig. Genau das Lego-Prinzip der Pipe aus Schritt 3.
Aufgabe – Faust unter der Lupe
- Wie viele Wörter und wie viele Zeilen hat das Buch?
- Wer kommt öfter vor – Faust oder Mephistopheles?
- Lass dir die 10 häufigsten Wörter ausgeben. Was fällt dir auf?
- Vergleiche Gretchen und Margarete (zwei Namen für dieselbe Person).
Lösung anzeigen
wc -w faust.txt # rund 30.000 Woerter
wc -l faust.txt # rund 8.000 Zeilen
grep -c Faust faust.txt # 270
grep -c Mephistopheles faust.txt # 286 -> Mephisto knapp vorn
cat faust.txt | tr ' ' '\n' | sort | uniq -c | sort -rn | head
grep -c Gretchen faust.txt # 36
grep -c Margarete faust.txt # 86
Die häufigsten Wörter sind kleine Funktionswörter wie „und", „die", „der", „ich" – sie tragen kaum Inhalt, kommen aber überall vor. Genau dieses Zählen steckt in Suchmaschinen und Textprogrammen.
Vertiefung · Teil 2
Wie ein Rechner Passwörter knackt
Warum soll ein Passwort lang sein? Weil ein Computer alle Möglichkeiten durchprobiert – unglaublich schnell. Wir bauen das nach: eine geheime 4-stellige PIN, die der Rechner selbst knackt.
Achtung – nur zum Verstehen
Das ist ein Lern-Experiment mit einer selbst erzeugten Zufalls-PIN. Fremde Passwörter oder Konten zu knacken ist verboten. Hier geht es nur darum zu verstehen, warum Sicherheit von der Länge abhängt.
Die Brute-Force-Maschine
Kopiere das in die Konsole. Es würfelt eine geheime PIN und probiert dann 0000, 0001, 0002 …
durch, bis sie stimmt – mit time gestoppt:
PIN=$(shuf -i 0-9999 -n 1 | xargs printf "%04d\n")
time for i in $(seq -w 0 9999); do
[ "$i" = "$PIN" ] && { echo "Geknackt: $i"; break; }
done
Führe es ein paar Mal aus. Egal welche PIN – der Rechner findet sie in Sekundenbruchteilen.
Aufgabe – Wie lange hält ein Passwort?
- Starte die Maschine drei Mal. Wie lange braucht sie laut
timeungefähr? - Eine 4-stellige PIN hat 10.000 Möglichkeiten. Wie viele sind es bei 6 Ziffern?
- Warum ist ein Passwort aus Buchstaben und Zahlen und Länge so viel sicherer?
Lösung anzeigen
1. Meist deutlich unter einer Sekunde – 10.000 Versuche sind für den Rechner nichts.
2. 6 Ziffern = 10 · 10 · 10 · 10 · 10 · 10 = 1.000.000 Möglichkeiten.
3. Jede zusätzliche Stelle und jedes zusätzliche Zeichen (klein, groß, Ziffer, Sonderzeichen) vervielfacht die Möglichkeiten. Aus Tausenden werden schnell Billionen – dann ist Durchprobieren aussichtslos.
| Passwort | Möglichkeiten | Für den Rechner … |
|---|---|---|
| 4 Ziffern | 10.000 | sofort |
| 6 Ziffern | 1.000.000 | Bruchteil einer Sekunde |
| 8 Zeichen (a–z, A–Z, 0–9) | ≈ 218 Billionen | praktisch aussichtslos |
Das nimmst du mit
Ein Rechner ist mächtig, weil er in Sekunden schafft, wofür ein Mensch Jahre bräuchte: riesige Datenmengen durchsuchen (Teil 1) und Millionen Möglichkeiten durchprobieren (Teil 2). Deshalb: lange Passwörter mit gemischten Zeichen.