Umgang mit der Shell Übungen: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
| Zeile 1: | Zeile 1: | ||
| − | |||
== 🔍 grep – Suchen in der Datei == | == 🔍 grep – Suchen in der Datei == | ||
'''Übung:''' | '''Übung:''' | ||
* Finde alle Zeilen, die das Wort "User" enthalten. | * Finde alle Zeilen, die das Wort "User" enthalten. | ||
| − | + | {{Collapse|title=Antwort|1=<pre>grep "User" testfile.txt</pre>}} | |
| − | |||
* Suche Zeilen, die mit "Error" beginnen. | * Suche Zeilen, die mit "Error" beginnen. | ||
| − | + | {{Collapse|title=Antwort|1=<pre>grep "^Error" testfile.txt</pre>}} | |
| − | |||
* Finde alle Zeilen, die '''nicht''' "Success" enthalten. | * Finde alle Zeilen, die '''nicht''' "Success" enthalten. | ||
| − | + | {{Collapse|title=Antwort|1=<pre>grep -v "Success" testfile.txt</pre>}} | |
| − | |||
---- | ---- | ||
| Zeile 17: | Zeile 13: | ||
'''Übung:''' | '''Übung:''' | ||
* Zähle die Anzahl der Zeilen in der Datei. | * Zähle die Anzahl der Zeilen in der Datei. | ||
| − | + | {{Collapse|title=Antwort|1=<pre>wc -l testfile.txt</pre>}} | |
| − | |||
* Zähle die Wörter in der Datei. | * Zähle die Wörter in der Datei. | ||
| − | + | {{Collapse|title=Antwort|1=<pre>wc -w testfile.txt</pre>}} | |
| − | |||
---- | ---- | ||
| Zeile 28: | Zeile 22: | ||
'''Übung:''' | '''Übung:''' | ||
* Ersetze alle Kleinbuchstaben durch Großbuchstaben. | * Ersetze alle Kleinbuchstaben durch Großbuchstaben. | ||
| − | + | {{Collapse|title=Antwort|1=<pre>tr 'a-z' 'A-Z' < testfile.txt</pre>}} | |
| − | |||
* Entferne alle Ziffern. | * Entferne alle Ziffern. | ||
| − | + | {{Collapse|title=Antwort|1=<pre>tr -d '0-9' < testfile.txt</pre>}} | |
| − | |||
---- | ---- | ||
| Zeile 39: | Zeile 31: | ||
'''Übung:''' | '''Übung:''' | ||
* Extrahiere die erste Spalte aus Zeilen mit "User". | * Extrahiere die erste Spalte aus Zeilen mit "User". | ||
| − | + | {{Collapse|title=Antwort|1=<pre>grep "User" testfile.txt | cut -d' ' -f2</pre>}} | |
| − | |||
* Schneide die ersten 10 Zeichen jeder Zeile ab. | * Schneide die ersten 10 Zeichen jeder Zeile ab. | ||
| − | + | {{Collapse|title=Antwort|1=<pre>cut -c1-10 testfile.txt</pre>}} | |
| − | |||
---- | ---- | ||
| Zeile 50: | Zeile 40: | ||
'''Übung:''' | '''Übung:''' | ||
* Ersetze "Alice" durch "Alicia". | * Ersetze "Alice" durch "Alicia". | ||
| − | + | {{Collapse|title=Antwort|1=<pre>sed 's/Alice/Alicia/' testfile.txt</pre>}} | |
| − | |||
* Lösche alle Zeilen, die mit # beginnen. | * Lösche alle Zeilen, die mit # beginnen. | ||
| − | + | {{Collapse|title=Antwort|1=<pre>sed '/^#/d' testfile.txt</pre>}} | |
| − | |||
---- | ---- | ||
| Zeile 61: | Zeile 49: | ||
'''Übung:''' | '''Übung:''' | ||
* Sortiere die Datei alphabetisch. | * Sortiere die Datei alphabetisch. | ||
| − | + | {{Collapse|title=Antwort|1=<pre>sort testfile.txt</pre>}} | |
| − | |||
* Sortiere rückwärts. | * Sortiere rückwärts. | ||
| − | + | {{Collapse|title=Antwort|1=<pre>sort -r testfile.txt</pre>}} | |
| − | |||
---- | ---- | ||
| Zeile 72: | Zeile 58: | ||
'''Übung:''' | '''Übung:''' | ||
* Zeige alle Dateien im aktuellen Verzeichnis, die mit "t" beginnen. | * Zeige alle Dateien im aktuellen Verzeichnis, die mit "t" beginnen. | ||
| − | + | {{Collapse|title=Antwort|1=<pre>ls t*</pre>}} | |
| − | |||
* Zeige Dateien an, die genau vier Zeichen lang sind. | * Zeige Dateien an, die genau vier Zeichen lang sind. | ||
| − | + | {{Collapse|title=Antwort|1=<pre>ls ????</pre>}} | |
| − | |||
---- | ---- | ||
| Zeile 83: | Zeile 67: | ||
'''Übung:''' | '''Übung:''' | ||
* Finde Telefonnummern (Muster: 123-456-7890). | * Finde Telefonnummern (Muster: 123-456-7890). | ||
| − | + | {{Collapse|title=Antwort|1=<pre>grep -E "[0-9]{3}-[0-9]{3}-[0-9]{4}" testfile.txt</pre>}} | |
| − | |||
---- | ---- | ||
| Zeile 91: | Zeile 74: | ||
'''Übung:''' | '''Übung:''' | ||
* Kombiniere grep, cut und sort, um die Namen der User alphabetisch zu sortieren. | * Kombiniere grep, cut und sort, um die Namen der User alphabetisch zu sortieren. | ||
| − | + | {{Collapse|title=Antwort|1=<pre>grep "User" testfile.txt | cut -d' ' -f2 | sort</pre>}} | |
| − | |||
---- | ---- | ||
Version vom 18. März 2025, 11:44 Uhr
🔍 grep – Suchen in der Datei
Übung:
- Finde alle Zeilen, die das Wort "User" enthalten.
Vorlage:Collapse
- Suche Zeilen, die mit "Error" beginnen.
Vorlage:Collapse
- Finde alle Zeilen, die nicht "Success" enthalten.
Vorlage:Collapse
🔢 wc – Zählen von Zeilen, Wörtern und Zeichen
Übung:
- Zähle die Anzahl der Zeilen in der Datei.
Vorlage:Collapse
- Zähle die Wörter in der Datei.
Vorlage:Collapse
🔤 tr – Zeichen umwandeln oder entfernen
Übung:
- Ersetze alle Kleinbuchstaben durch Großbuchstaben.
Vorlage:Collapse
- Entferne alle Ziffern.
Vorlage:Collapse
✂️ cut – Spalten aus der Datei extrahieren
Übung:
- Extrahiere die erste Spalte aus Zeilen mit "User".
Vorlage:Collapse
- Schneide die ersten 10 Zeichen jeder Zeile ab.
Vorlage:Collapse
📝 sed – Suchen und Ersetzen
Übung:
- Ersetze "Alice" durch "Alicia".
Vorlage:Collapse
- Lösche alle Zeilen, die mit # beginnen.
Vorlage:Collapse
🔀 sort – Sortieren der Datei
Übung:
- Sortiere die Datei alphabetisch.
Vorlage:Collapse
- Sortiere rückwärts.
Vorlage:Collapse
🔹 Shell-Sonderzeichen (*, ?, [ ])
Übung:
- Zeige alle Dateien im aktuellen Verzeichnis, die mit "t" beginnen.
Vorlage:Collapse
- Zeige Dateien an, die genau vier Zeichen lang sind.
Vorlage:Collapse
🔎 Reguläre Ausdrücke (grep -E)
Übung:
- Finde Telefonnummern (Muster: 123-456-7890).
Vorlage:Collapse
🔄 Mehrere Befehle nacheinander ausführen
Übung:
- Kombiniere grep, cut und sort, um die Namen der User alphabetisch zu sortieren.
Vorlage:Collapse
📄 Testdatei (testfile.txt)
Erstelle eine Datei `testfile.txt` mit folgendem Inhalt:
# Dies ist eine Testdatei für Linux-Befehle User: Alice Age: 30 Location: Berlin User: Bob Age: 25 Location: Hamburg User: Charlie Age: 35 Location: Munich Error: File not found Warning: Low disk space Success: Operation completed 123-456-7890 +49 176 1234567 abc_def_ghi Hello, world! The quick brown fox jumps over the lazy dog. linux Linux LiNuX apple banana apple cherry zebra apple mango banana