lehrkraefte:snr:informatik:glf4-23:kommandozeile

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
lehrkraefte:snr:informatik:glf4-23:kommandozeile [2024/02/23 10:56]
Olaf Schnürer [Kommandozeile (= bash = git-bash)]
lehrkraefte:snr:informatik:glf4-23:kommandozeile [2024/04/29 15:32] (current)
Olaf Schnürer
Line 3: Line 3:
 ====== Kommandozeile (= bash = git-bash) ====== ====== Kommandozeile (= bash = git-bash) ======
  
-Ziel der Prüfung: Ihr findet euch in einem Verzeichnisbaum zurecht und zeigt dies in der git-bash! ''cd'', ''cp'', ''ls'', ''mv'' etc.+Lernziele/Ziel der Prüfung: Ihr findet euch in einem Verzeichnisbaum zurecht und zeigt dies in der git-bash! ''cd'', ''cp'', ''ls'', ''mv'' etc.
  
 <WRAP center round important> <WRAP center round important>
Line 10: Line 10:
   * python-Programme können ausgeführt werden (z.B. ''python guide.py'')   * python-Programme können ausgeführt werden (z.B. ''python guide.py'')
   * Wissen, wie man eine Zip-Datei in einem gewünschten Verzeichnis entpackt. (Am einfachsten Datei per rechter Maustaste an gewünschtem Ort speichern, dort per ''unzip NAME.zip'' auspacken.   * Wissen, wie man eine Zip-Datei in einem gewünschten Verzeichnis entpackt. (Am einfachsten Datei per rechter Maustaste an gewünschtem Ort speichern, dort per ''unzip NAME.zip'' auspacken.
-  * Wissen, wie man ein Verzeichnis samt ALLER Unterverzeichnisse in eine zip-Datei packt: ''zip -r NAME_DER_ZIP_DATEI.zip NAME_DES VERZEICHNISSES'' (Die Option ''-r'' (für "rekursiv") ist **äusserst wichtig**, denn sie sorgt dafür, dass nicht nur der Inhalt des Verzeichnisses, sondern auch der Inhalt aller Unterverzeichnisse "eingepackt" wird.) +  * Wissen, wie man ein Verzeichnis samt ALLER Unterverzeichnisse in eine zip-Datei packt (bitte nicht 7zip oder so etwas)<del>''zip -r NAME_DER_ZIP_DATEI.zip NAME_DES VERZEICHNISSES'' (Die Option ''-r'' (für "rekursiv") ist **äusserst wichtig**, denn sie sorgt dafür, dass nicht nur der Inhalt des Verzeichnisses, sondern auch der Inhalt aller Unterverzeichnisse "eingepackt" wird.)</del> 
-  * Die Abgabe der Prüfung erfolgt voraussichtlich als zip-Datei!+  * Die Abgabe der Prüfung erfolgt als zip-Datei! 
 + 
 +Die folgenden Befehle/Fähigkeiten werden voraussichtlich in der Prüfung benötigt (es sei denn, man macht lieber alles "naiv mit Windows-Mitteln"). 
 +  * Sich im Verzeichnisbaum bewegen (mit ''cd'', etwa ''cd ..'' für eine Ebene nach oben oder ''cd'' zum Wechsel ins Home-Verzeichnis) 
 +  * Inhalt des aktuellen Verzeichnisses anlegen (mit ''ls''). 
 +  * Dateien kopieren und verschieben (mit ''cp'' und ''mv''). 
 +  * Wildcards verwenden 
 +  * Auffinden von Dateien (mit ''find''). 
 +  * Ausgabe des Inhalts von Dateien (mit ''cat'').  
 +  * eine Datei oder alle Dateien im aktuellen Verzeichnis inklusive Unterverzeichnis nach einem Muster durchsuchen (mit ''grep''
 +  * Sortieren (mit ''sort''). 
 +  * Anlegen einer Datei mit Textinhalt (etwa per ''notepad'' oder per ''echo TEXT > DATEINAME''
 +  * Anlegen eines Verzeichnisses (mit ''mkdir''
 +  * Wer Aufgaben nicht vollständig erledigt bekommt, kann Teillösungen in einer Text-Datei dokumentieren (für Teilpunkte). 
 +  * Wer aus Versehen in der gegebenen Verzeichnisstruktur etwas Wichtiges löscht, sollte ein neues Verzeichnis erstellen und dort "neu anfangen" und dies in der Dokumentationsdatei dokumentieren. Am Ende alle relevanten Verzeichnisse als Zip-Datei abgeben.  
 + 
 +''for''-Schleifen werden nicht verlangt. 
 + 
 +Hier nochmal "dasselbe" etwas konkreter: 
 +  * ''ls'', ''cd'' (navigieren) 
 +  * ''mv'', ''cp'' (verschieben, kopieren) 
 +  * Wildcards, um Dateinamenmuster zu beschreiben, auch über mehrere Verzeichnisse (z.B. ''mv */*/*.song bli/bla/blu/.''). 
 +  * ''cat datei.txt'' (Dateiinhalt ausgeben) 
 +    * ''cat *'' (Inhalt aller Dateien im aktuellen Verzeichnis ausgeben) 
 +  * ''echo 'kleiner Text' > neueDatei.txt''  (Text in eine Datei umleiten, Inhalt wird komplett ersetzt) 
 +  * ''find'' (alle Dateien vom aktuellen Verzeichnis aus mit vollständigem Pfadnamen anzeigen) 
 +    * ''find . -name '*cool*' '' (alle Datein vom aktuellen Verzeichnis aus anzeigen, die ''cool'' im Namen haben. 
 +  * ''grep'' (Text filtern) 
 +    * ''grep nadel heuhaufen.txt'' (Alle Zeilen der Datei heuhaufen.txt anzeigen, die die Zeichenkette ''nadel'' enthalten). 
 +    * ''grep -R nadel'' (Rekursiv alle Dateien anzeigen, die 'nadel' in einer Zeile enthalten). 
 +    * ''find | grep nadel'' (Listet alle Datei- und Verzeichnisnamen ab dem aktuellen Verzeichnis auf, die ''nadel'' im Dateinamen haben. Die «Pipe» ''|'' bedeutet, dass die Ausgabe des ersten Kommandos als Eingabe des nächsten Kommandos benutzt wird. 
 +  * ''sort datei.txt'' (Inhalt alphabetisch sortieren) 
 +    * ''sort -n datei.txt'' (Inhalt nummerisch sortieren) 
 +  * ''notepad datei.txt'' (Datei mit Texteditor bearbeiten, bzw. neu anlegen und bearbeiten). 
 +    * ''notepad ../verzeichnis1/verzeichnis2/datei.txt'' (Datei in einem anderen Verzeichnis öffen). 
 +  * ''python programm.py'' führt ein Python-Programm aus (''programm.py'' muss sich im aktuellen Verzeichnis befinden).
 </WRAP> </WRAP>
  
   * Abbruch von Prozessen geht in der git-bash (oft) mit ''Ctrl-c''. Alternative: Neu starten.   * Abbruch von Prozessen geht in der git-bash (oft) mit ''Ctrl-c''. Alternative: Neu starten.
   * Python verlassen per ''Ctrl-z + Enter'' oder ''exit() + Enter''.   * Python verlassen per ''Ctrl-z + Enter'' oder ''exit() + Enter''.
 +  * Wenn man ein Programm startet, etwa per ''notepad DATEINAME'', so kann man in der git-bash nichts mehr eingeben, solange dieses Programm läuft (d. h. zum Weiterarbeiten muss man das Programm schliessen). Alternative: Mit dem "Kaufmanns-Und" & am Ende kann man ein Programm "parallel" laufen lassen, also etwa per ''notepad DATEINAME &''. Dann kann man die git-bash weiterhin verwenden. (In Linux geht auch nachträglich ''Ctrl+z'' plus Eingabe ''bg''+Enter in der git-bash, um ein Programm im Hintergrund/parallel laufen zu lassen; ''bg'' steht für "background", also Hintegrund.)
  
 <hidden Tafelerklärungen (Ausklappbox)> <hidden Tafelerklärungen (Ausklappbox)>
  • lehrkraefte/snr/informatik/glf4-23/kommandozeile.1708682188.txt.gz
  • Last modified: 2024/02/23 10:56
  • by Olaf Schnürer