Die shell, das terminal, das schwarze Fenster oder nur xterm wie auch immer man es bezeichnen will, wir wollen über jenen Befehlsinterpreter sprechen mit dem man unglaublich viel anstellen kann.

Er ist immer aktiv und braucht keine Grafik, kommt mit ein paar KB-Speicher aus und kann uns ungemein helfen. Zur Shell gibt es ein paar build-in Befehle und ungemein viele Befehle die als eigenständige Programme vorliegen.

In diesem Beitrag möchte ich ein paar Kommandos die in jedem System vorhanden sind unter die Lupe nehmen. Damit es einen Mehrwert hat, basteln wir uns daraus ein Telefonbuch In den nachfolgenden Beiträgen werden wir das Telefonbuch erweitern. Mal sehen was daraus wird.

Liste der Standardkommandos

Aber schauen wir uns die Kommandos an:

  • grep sucht einen Begriff in einer Datei
  • cat zeigt den Inhalt einer Datei
  • tr ersetzt in einem String einen Begriff
  • cut schneidet einen Teil eines Strings aus
  • sort sortiert eine Liste
  • echo Ausgabe einer Variablen oder eines Strings
  • expr Anweisung, dass man etwas rechnen will.
  • set Variable inhalte setzen oder Traces aktivieren.
  • tail das Ende einer Datei oder Liste anzeigen.
  • head den Anfang einer Liste oder Datei anzeigen.
  • date Datum und Uhrzeit setzen oder anzeigen.
  • bc Taschenrechner
  • diff 2 Dateien vergleichen
  • mkdir Verzeichnis anlegen.
  • rmdir verzeichnis löschen
  • rm Datei löschen
  • cd wechseln in ein Verzeichnis
  • df Plattenbelegung anzeigen.
  • du Belegung von Verzeichnissen und Dateien
  • wc zählen von Bytes und Zeilen.
  • ls Ausgabe von Verzeichnisinhalten
  • find Suchen von Dateien.
  • file Art der Datei
  • sum Prüfsumme über eine Datei bilden.
  • more seitenweise Ausgabe
  • cp kopie einer Datei
  • tar Sicherungsmethode
  • cpioc Sicherungsmethode
  • vi, ed, vim Editoren

Testdaten

als erstes brauchen wir für unser Telefonbuch Daten. Wir legen uns eine Textdatei im Home-Verzeichnis an. Nennen wir sie telefonbuch.txt. Mit dem Editor eurer Wahl schreiben wir in die Datei.

Feuerwehr;122; moedling@feuerwehr.at
Polizei;133;moedling@polizei.at
Rettung;144;baden@rettung.at
meine_telefonnummer;+43-1234-56789;juhu01@gmx.at
deine_anschrift;;

Wir speichern diese Datei und wollen jetzt damit beginnen damit zu arbeiten.

Dazu starten wir ein Terminal und tippen ein

cat telefonbuch.txt

Wir erhalten eine Liste des Dateiinhaltes so wie wir ihn eingetippt haben. Wenn wir diese Liste sortier haben wollen, dann können wir die Ausgabe als Eingabe bei der Sortierung verwenden. Eine Ausgabe weiterleiten erfolgt mit dem Zeichen | (Pipe)

cat telefonbuch.txt | sort  

und schon ist es nach Namen sortiert. Jetzt wollen wir es nach Telefonnummer sortieren und ergänzen unser Kommando um den Parameter -t und -k . Wenn man in den man-Üages nachschaut finden man unter -t die Feldtrennung und unter -k das Feld.

cat telefonbuch.txt | sort -t ";" -k 2

und schon ist unsere Liste nach Telefonnummern sortiert. Natürlich eine 3 und es wäre nach der e-Mail sortiert. Wenn ich mehrere Felder sortieren möchte kann ich es in Form von -k 2,1 angeben. Dann wird es zuerst nach Telefonnummer, dann nach Namen sortiert. Ihr seht, es ist keine Hexerei

Gehen wir zum nächsten Befehl dem grep. Grep sucht mir aus einer Liste nur jene Begriff die mit dem Suchbegriff übereinstimmen.

cat telefonbuch.txt | grep "Feuer"

Alles was mit „Feuer“ beginnt wird gefunden. Wenn ich feuer und Feuer suche dann sage ich grep mit -i ignoriere die Groß- und Kleinschreibung. Mit einem -v soll grep alles liefern außer „Feuer“

cat telefonbuch.txt | grep -i -v "feuer"

Auch bei vielen 1000 Datensätzen würde sich das im Millisekundenbereich bewegen. Wenn ihr wissen wollt, wie lange ein Befehl braucht, schreibt einfach ein den Begriff time davor

Vielleicht ist es aufgefallen, dass ich des öfteren etwas unter „“ Anführungszeichen geschrieben habe. Die shell hat einen Haufen reservierte Zeichen die eine Sonderbedeutung haben. Eines ist der ; als Trennzeichen zwischen 2 Kommandos. Wenn ich jetzt das Zeichen expliziert suche/verwende dann muss ich das der shell sagen. Dazu kann man das Anführungszeichen nutzen. Wir werden später noch weitere kennen lernen.

Als letzten Befehl für heute wollen wir uns noch den Befehl cut ausschneiden, anschauen

cat telefonbuch.txt | grep -i -v "feuer" | cut -d";" -f3-3

-d ist unser Trennzeichen der ; und wir wollen das 3 Feld haben. Profis wie wir sind haben wir das sofort durchschaut. Wenn wir jetzt nur den Mailnamen ohne Domaine haben wollen dann hängen wir einfach ein weiteres cut an .

cat telefonbuch.txt | grep -i -v „Feuer“ | cut -d“;“ -f3 | cut -d“@“ -f1-1

und wenn wir jetzt nur die ersten 4 buchstaben haben wollen dann können wir es mit der Option -c1-4 machen.

Klassifizierung-

  • Einführung in das Scripten/Shell
  • ungefährlich
  • EDV Grundwissen von Vorteil




Schreibe einen Kommentar

Noch keine Reaktion

Neue Themen im Forum
Petition gegen die Ausstattung ba …An der Petition soeben teilgenommen.... Weiterlesen
Statistik Oktober 2025Ja, so gesehen haben wir im Jahr 2025 bis Ende Oktober bereits übe … Weiterlesen
Internationaler Strafgerichtshof …Oh nein, gab's/gibt's die Abhängigkeitsbefürchtungen nic … Weiterlesen
Kategorien im Wiki
WIKI-Beiträge des Monates

Die Beiträge des Monates finden Sie im Kalender unter den blau markierten Tageszahlen.

November 2025
M D M D F S S
 12
3456789
10111213141516
17181920212223
24252627282930
Archiv