UNIX - Die wichtigsten Befehle

Roland Bernert, Regionaler Arbeitskreis Internet im Oberschulamt Karlsruhe

UNIX für Fortgeschrittene
Befehl Erläuterungen
Das Programm grep sucht in einer Textdatei nach einem Suchwort 
Bsp: grep Bernert /etc/passwd 
allgemein: grep suchstring dateiname 
Das Programm awk Sehr leistungsfähiges Programm für allgemeine Textanalyse und Datenzugriff. Kann eine Textdatei auswerten und daraus eine neue Datei generieren. 
Für genauere Informationen lesen Sie bitte die Manpage (man awk) des UNIX-System. Es gibt Bücher, die sich nur mit dem AWK beschäftigen. 
Bsp: awk '{ print $1 $2 }' eineDatei.txt 
- holt die beiden ersten - durch Leerzeichen getrennten - Felder einer textorientierten Danbank Zeile für Zeile und gibt die Felder aus. 
Bsp: awk -F: '{ print "Name="$1" Vorname="$2 }' Namensdatei.txt 
- Das selbe wie oben - Trennzeichen ist jetzt der Doppelpunkt !
Der Befehl uniq Bsp: uniq <eingabeDatei > ausgabedatei 
-liest aus der Eingabedatei alle Zeilen, vergleicht diese mit den nachfolgenden und löscht Duplicate. Man sollte vorher die Textdatei sortieren, um alle mehrfach vorkommenden Zeilen zu entfernen. Schließlich wird das Ergebnis in die Ausgabedatei geschrieben. 
Der Befehl tr Translate (Ersetzen-) Operator 
Bsp:tr '~' ':' <eingabeDatei > ausgabeDatei 
- liest alle Zeilen der Eingabedatei ersetzt jedes Tilde (~)-Zeichen durch einen Doppelpunkt und gibt das Ergebnis in die Ausgabedatei aus.
Der Befehl sort Sortiert Textdateien 
Bsp: sort /etc/passwd 
- liest die Datei /etc/passwd und gibt sie sortiert auf den Bildschirm aus. 
Bsp: grep za123 /etc/passwd |sort >ausgabeDatei 
- liest die Datei /etc/passwd und gibt alle Zeilen, die "za123" enthalten in die Datei AusgabeDatei sortiert aus. 
Das Programm cat Ausgabe oder Zusammenhängen von Dateien. 
Bsp: cat /etc/passwd> 
- gibt den Inhalt der Datei /etc/passwd aus. 
Bsp: cat /etc/passwd > test,txt 
- gibt den Inhalt der Datei /etc/passwd in die Datei "test.txt" aus. 
Bsp: cat Datei1 Datei2 Datei3 > test,txt 
- Hängt die drei Dateien Datei1, Datei2, Datei3 zusammen zu einer Datei "test.txt" 
Ein kleines Beispielsprogramm #! /usr/bin/ksh 
grep Ber /etc/passwd >test1.txt 
awk -F: '{ print $5 }' test1.txt >test2.txt 
sort test3.txt 
cat test3.txt 
Das Programm liest die Datei /etc/passwd und sucht dort alle Namen, die mit "Ber" beginnen. AWK spaltet diese Zeilen in einzelne Felder auf und gibt nur die Namen (Feld Nr. 5) aus. Anschliessend werden die Namen sortiert und mit cat ausgeben. 
Der Befehl less Ausgabe von Textdateien 
Ähnlich wie cat gibt less Textdateiinhalte aus. Jedoch kann mit Hilfe von less in Dateien geblättert werden. 
Bsp: less /etc/passwd 
Der Befehl df Diskfree 
- liefert den "verbrauchten" bzw, freien Plattenplatz der Festplatte 
Bsp: df 
Der Befehl ps Prozessorstatus 
- zeigt die momentan laufenden Prozesse der Maschine 
Bsp: ps -ef 
Der Befehl pwd Zeigt den Namen des aktuellen Arbeitsverzeichnisses an 
Bsp: pwd 
Der Befehl head Gibt (bei mehreren Dateien) den Dateinamen und die ersten Zeilen der Datei aus. 
Bsp: head -5 /etc/passwd test.txt 
- gibt die ersten 5 Zeilen der Dateien /etc/passwd und test.txt aus. 
Der Befehl more Gibt (bei mehreren Dateien) Dateien seitenweise auf den Bildschirm aus. 
Bsp: more /etc/passwd
Der Befehl tail Gibt (bei mehreren Dateien) Dateien den Dateinamen und die letzten Zeilen der Datei aus. 
Bsp: tail -6 /etc/passwd, test.txt 
- zeigt die jeweils die letzten 6 Zeilen der Dateien /etc/passwd und test.txt
Der Befehl echo Gibt Text aus 
Bsp: echo "Dies ist ein Test"  
- gibt den Text "Dies ist ein Text" aus. 


Mittelungen bitte an Roland Bernert