Wichtige und praktische Kommandos
ls (list files)
ls zeigt die Dateien im aktuellen Verzeichnis an. Nützliche Optionen:
ls -aalle Dateien anzeigen (auch versteckte)ls -lZusätzliche Informationen anzeigen.ls -ltrDateien nach Datum (-t) in umgekehrter Reihenfolge (-r) anzeigen. So wird die neueste Datei zuunterst angezeigt.ls -lhSrDateien nach Grösse (-S) in umgekehrter Reihenfolgen (-r) in «human readable format» (-h) anzeigen. Damit erscheinen die grössten Dateien zuunterst (praktisch zum Aufräumen).
cd (change directory)
cd wechselt das aktuelle Verzeichnis.
- Ohne Argument (einfach
cdalleine) wechselt ins Home-Verzeichnis, unter Windows typischerweise/c/Users/benutzername/, unter Linux/MacOS/home/benutzername. cd ..wechselt ins Elternverzeichnis (eine Ebene zurück).cd informatik/jokerchainwechselt zwei Verzeichnisse auf einmal.
mkdir (make directory)
mkdir legt ein neues Verzeichnis an:
mkdir testLegt im aktuellen Verzeichnis ein neues Verzeichnistestan.mkdir -p alles/auf/einmalLegt verschachtelte Verzeichnisse auf einmal an (anstattmkdir alles,cd alles,mkdir auf,cd auf,mkdir einaml,cd ../..)
rmdir (remove directory)
rmdir löscht ein leeres Verzeichnis
rmdir testLöscht das leere Verzeichnis test im aktuellen Verzeichnis. Schlägt fehl und tut nichts, wenn das Verzeichnis nicht leer ist.
pwd (print working directory)
Zeigt das aktuelle Verzeichnis an. Dieses wird normalerweise schon automatisch auf der Kommandozeile angezeigt.
cp (copy)
cp kopiert Dateien.
cp orignal.txt kopie.txtkopiert die Dateioriginal.txtunter neuem Namenkopie.txt.cp test.txt foo/bar/.kopiert die Dateitest.txtunter gleichem Namen in den Ordnerbar, der sich im Ordnerfoobefindet.cp *.md backup/.kopiert alle Dateien, die mit.mdaufhören in den Ordnerbackup.cp -r meinordner /c/backup/.kopiert den Ordnermeinordnerrekursiv (d.h. mit allen Dateien und Ordnern, die darin sind) in den Ordner/c/backupcp -vrau meinordner /c/backup/.zeigt den Vorgang an (-v für verbose), (-r) rekursiv, (-a) archiv (d.h. die Zieldatei erhält die gleichen Attribute, wie die Quelldatei. Insbesondere werden die Datumsangaben übernommen), -u für update, d.h. nur neuere bzw. im Ordnerbackupnicht existierende Dateien werden kopiert. Das eignet sich sehr gut für wiederholte schnelle Backups.
mv (move)
mv verschiebt Dateien (bzw. benennt diese um).
mv alt neubenennt die Dateialtinneuum.mv datei ordner/.verschiebt die Dateidateiin den Ordnerordner.mv jocker-chain2022*.md backup/.verschiebt alle Dateien, die mitjocker-chain2022beginnen und mit.mdaufhören in den Ordnerbackup.mv ordner1 ordner2/.verschiebt den Ordnerordner1mitsam allem Inhalt in den Ordnerordner2.
rm (remove)
rm löscht Dateien. Mit Vorsicht zu gebrauchen. Die Dateien werden dabei nicht in den Papierkorb verschoben, d.h. die Löschung ist unwiderruflich.
Wildcards
Wo immer ein oder mehrere Dateinamen angegeben werden können, können diese mit einem Muster beschrieben werden.
Dabei stehen
*für beliebige, beliebig viele Zeichen (auch keines). Typische Beispiele:*.txtAlle Dateien, die die Endung.txthaben.IMG_3*.jpgAlle Dateien, die mitIMG_3beginnen und mit.jpgenden. Z.B.IMG_3.jpg,IMG_3210.jpg
?für genau ein belibiges Zeichen. Typische Beispiele:hallo0?.txtpasst z.B. aufhallo00.txt,hallo0z.txtaber nicht aufhallo007.txtoderhallo0.txt
[a-z]steht für genau ein Kleinbuchstabe a-z.[3-6]steht für genau eine Ziffer 3 bis und mit 6.{jpg,png,gif}steht für genau eines der aufgeführten Wörter. Typishces Beispiel:*.{jpg,jpeg,png,gif}Alle Dateien die mit eine der aufgeführten Endungen haben.
- Laden Sie folgendes zip-Archiv herunter wildcards.zip und speichern Sie es in
C:\ofi. - Navigieren Sie mit dem
cdKommando dorthin und überprüfen Sie mit demlsKommando, ob die zip-Datei auch dort liegt.
cd /c/ofi ls
- Entpacken Sie das Archiv mit
unzip wildcards.zip
- Wechseln Sie (mit
cdins Verzeichniswildcardsund verschieben (mv) Sie die Dateien wie folgt:- Alle .jpg-Dateien von 2022 in ein Unterverzeichnis 2022 (mit
mkdir 2022anlegen!) - Alle .jpg-Dateien von 2023 in ein Unterverzeichnis 2023
- Alle Logos, die «
ganz-fertig» sind, in ein Unterverzeichnislogos-ganz-fertig. - Alle anderen Logos in ein Unterverzeichnis
logos-archiv.
- Überprüfen Sie am Schluss, ob Sie alles richtig gemacht haben, indem sie die Datei
verifier.bashstarten:
bash verifier.bash
- Studieren Sie den Code in
verifier.bashmit folgender Erklärung:echogibt alles was folgt auf die Konsole aus (z.B. zur Information).ls -Rgibt alle Dateien und Verzeichnisse rekursiv aus (d.h. auch den Inhalt der Unterverzeichnisse etc.).|nimmt die Ausgabe der Kommandozeile davor und nutzt diese als Eingabe für die nächste Kommandozeile.diffvergleicht den Inhalt zweier Dateien zeilenweise und gibt die Unterschiede aus. Wird eine Datei als-angegeben, wird mit der Eingabe (d.h. hier mit der Ausgabe vonls -R) anstatt einer Datei gearbeitet.
Diese Aufgabe gibt es als Screencast vorgelöst: weltöffentlich und anonym oder auf dem kantonalen Sharepoint