Show pageOld revisionsBacklinksBack to top This page is read only. You can view the source, but not change it. Ask your administrator if you think this is wrong. ====== Kommandozeile für Fortgeschrittene ====== Hier werden weitere Standard-Kommandos aus der Unix-Welt vorgestellt. Diese sind mit der git-bash automatisch mitinstalliert. ===== Umlenkung der Ausgabe in eine Datei mit '>' ===== Die Ausgabe, die ein Programm produziert, kann in eine Datei umgeleitet werden. Beispiel: <code bash> echo hello world > hello.txt </code> echo gibt einfach den gegebenen Text aus. Das ''>'' Zeichen leitet die Ausgabe in eine Datei um. Diese wird dabei überschrieben falls die Datei schon existiert. Andernfalls wird die Datei erstellt. Das ist manchmal praktisch, um ganz kleine Dateien zu schreiben, ohne gleich einen Text-Editor zu öffnen. Sonst können Sie einfach mit <code bash> notepad hello.txt </code> die entsprechende Datei bearbeiten bzw. anlegen (speichern nicht vergessen!) ===== Umlenkung der Ausgabe in ein nächstes Programm mit '|' ===== Beispiel: <code bash> yes | python guide.py </code> Das Programm ''yes'' gibt fortlaufend den Text «yes» aus, bzw. jenen, der danach angegeben wird. Das Python Programm liest dies ein, als ob man dies auf der Tastatur eingegeben hätte. Es werden also automatisch alle Hilfen angezeigt ;-) ===== Weitere nützliche Kommandos ===== ==== cat (Datei ausgeben) ==== Beispiel: <code bash> seq 1 3 30 > test.txt cat test.txt </code> Das erste Kommando ''seq 1 3 30'' produziert eine Folge von Zeilen mit den Zahlen 1,4,7, etc. Mit ''cat'' wird die Datei auf das Terminal ausgegeben. ==== sort (Zeilen sortieren) ==== sort sortiert alle Zeilen. Entweder jene von der Eingabe oder aus der Datei (oder den Dateien) die angegeben wurde(n). Beispiele: <code bash> seq 1 2 30 | sort sort test.txt </code> ''sort'' sortiert die produzierten Zeilen **alphabetisch**, was nicht unbedingt das Gewünschte ist. Soll **n**ummerisch sortiert werden, fügt man die Option ''-n'' an: <code bash> seq 1 2 20 | sort > surprise.txt cat surprise.txt sort -n surprise.txt </code> ==== grep (Zeilen filtern) ==== ''grep'' gibt jene Zeilen aus, in denen eine gegebene Zeichenkette (z.B. ein Wort oder Zahl) vorkommt. Diese Zeilen kommen entweder als Input daher, oder es werden die angegebenen Datei durchsucht. Beispiel: Wie viele Zahlen von 1 bis 100 enthalten die Ziffer 2? <code bash> seq 1 100 | grep 2 seq 1 100 | grep 2 | wc </code> Das Kommando ''wc''(word count) zählt Zeilen, Wörter und Bytes. Mit der Option ''-R'' werden alle Dateien und Unterverzeichnisse nach dem Muster durchsucht. <code bash> grep -R muster </code> ==== find (Dateien finden) ==== ''find'' listet alle Dateien auf, die sich im gegebenen Verzeichnis und Unterverzeichnissen befinden. <code bash> find desk </code> Mit ''-name'' werden nur Dateien gelistet, die dem Suchmuster entsprechen. Achtung, das Suchmuster muss zwischen Anführungszeichen stehen (sonst wird das Suchmuster schon vor der Suche ersetzt). <code bash> find desk -name '*.txt' </code> ==== unzip (zip-Datei entpacken) ==== <code bash> unzip ~/Downloads/passwordhunt.zip </code> Entpackt die Datei in ''~/Downloads/passwordhunt.zip'' ins aktuelle Verzeichnis. ====== Passwordhunt Adventure ====== <WRAP todo> * Speichern Sie folgendes Archiv ins Verzeichnis ''C:\ofi'' (Rechtklick, Link speichern als): {{lehrkraefte:blc:informatik:glf22:passwordhunt.zip}}. * Entpacken Sie das Archiv direkt auf der Kommandozeile mit ''unzip passwordhunt.zip'' (Voraussetzung ist, dass Sie sich im richtigen Verzeichnis befinden). * Überprüfen Sie wieder mit ''ls'', ob auch ein neues Verzeichnis entstanden ist. * Wechseln Sie ins neue Verzeichnis mit ''cd passwordhunt'' <key>Tab</key> <key>Enter</key>. * Starten Sie den Guide mit ''python guide.py'' * Viel Spass! </WRAP> lehrkraefte/blc/informatik/glf4-23/kommandozeile/advanced.txt Last modified: 2024/01/25 22:16by Olaf Schnürer