Verarbeiten von Dateien
|
, >
, >>
cat
, head
, tail
, less
, tee
sort
, uniq
, wc
Pipes, stdin, stdout, stderr
$PROGRAMM1 | $PROGRAMM2
$PROGRAMM > $DATEI
$PROGRAMM >> $DATEI
Dateien ausgeben und verarbeiten
cat $DATEI
cat $DATEI1 $DATEI2
less $DATEI
# q
head $DATEI
tail $DATEI
head $DATEI -n 1 ## --lines
tail $DATEI -n 1 ## --lines
$PROGRAMM | head
$PROGRAMM | tail
grep $SUCHBEGRIFF $DATEI
grep $SUCHBEGRIFF -r $VERZEICHNIS
$PROGRAMM | grep $SUCHBEGRIFF
$PROGRAMM | grep -v $SUCHBEGRIFF ## --invert-match
$PROGRAMM | grep -i $SUCHBEGRIFF ## --ignore-case
$PROGRAMM | grep --color $SUCHBEGRIFF
$PROGRAMM | grep -A $NUM $SUCHBEGRIFF ## --after-context
$PROGRAMM | grep -B $NUM $SUCHBEGRIFF ## --before-context
$PROGRAMM | grep -C $NUM $SUCHBEGRIFF ## --context
Aufgaben
-
Filtern Sie aus
/var/log/dpkg.log
alle Zeilen, die beschreiben, wann welches Paket installiert wurde.- Schreibe das Ergebnis in eine Datei.
- Welche Pakete waren die 10 zuerst installierten?
-
In welcher Datei (unterhalb von
/etc
) wird die WLAN-Konfiguration gespeichert?- Hinweis: Überlegen Sie sich, welche Zeichenketten in der Konfiguration stehen müssten.
Zusatzaufgaben
-
Was waren die ersten auf der Kommandozeile eingegebenen Befehle? Verarbeiten Sie dafür die Ausgabe des Befehls
history
. -
In welche Datei speichert
history
? Finden Sie die entsprechende Zeile der manpage pergrep
? - Als Administrator kann man Log-Dateien mit dem Befehl
journalctl
anzeigen.- Versuchen Sie herauszufinden, wann das System zuletzt eine IP-Adresse per DHCP erhalten hat?
Tools für Fortgeschrittene
$PROGRAMM | sort
$PROGRAMM | sort -n ## --numeric-sort
$PROGRAMM | uniq
$PROGRAMM | sort | uniq
$PROGRAMM | sort | uniq -c ## --count
$PROGRAMM | wc
$PROGRAMM | wc -l ## --lines
cut -d$TRENNZEICHEN -f$INDEX $DATEI
cut -d: -f1 /etc/passwd
$PROGRAMM | tr $VON $NACH
echo Maus | tr M H
$PROGRAMM | sed "s/$SUCHMUSTER/$ERSETZUNG/g"
sed -i "s/$SUCHMUSTER/$ERSETZUNG/g" $DATEI ## --in-place
Aufgaben
-
Welche Nutzer (in
/etc/passwd
) habenbash
als Standardshell? - Berechnen Sie eine Auflistung, in der jede verwendete Standardshell genau genau einmal gelistet wird.
- Wieviele Nutzer nutzen jeweils welche Standardshell?
Zusatzaufgaben
-
Welche der von
history
gelisteten Befehle wurden am häufigsten verwendet? -
journalctl
listet als 5. durch Leerzeichen getrenntes Feld (vor dem Zeichen „[“) die „Unit“ (Dienst), von welcher der Logeintrag kommt. Berechnen Sie eine sortierte Liste, welche Unit wie viele Zeilen geloggt hat.