Shell - Tricks
kleine nützliche Shell - Tricks
Anzahl laufender Prozesse von z.B. exim ermitteln
ps -fe | grep exim | wc -l
- mit ps -fe bekommt man alle Prozesse in der vollen Ausgabe
- mit grep exim werden nur die Zeilen mit exim berücksichtigt
- und wc -l zählt uns dann die Zeilen+
Ausgabe beschneiden mit cut
hin und wieder möchte man von einer Ausgabe, von z.B. Dateinamen nur einen Teil haben.Wenn man jetzt z.B. folgende Zeilen erhält:
ein-langer-name1-121233432211
ein-langer-name2-121233432434
und man nur den Text "ein-langer-name1" haben möchte, so über gibt man über eine pipe die Ausgabe an cut:
ls | cut -c 1-16
tee das T-Stück für lange pipe-Operationen
mit tee kan man sich zwischen 2 pipe Operationen hängen und die Ausgabe in eine Datei zu loggen.ls | tee liste.txt | cut -c 1-16 > fertigeliste.txtDie Datei liste.txt enthält dann das Ergebniss des Zwischenschrittes.
Rechnen mit Variablen in Shell Skripten
Variablen kann man in Shell Skripten wie folgt definieren:zeilenanzahl=`ls | cut -c 1-16`auf diese kann dann wie folgt zugegriffen werden:
echo "Anzahl der Zeilen: $zeilenanzahl"Um mit den Werten in Variablen rechnen zu können, geht man wie folgt vor:
ergebnis=$(((zeilenanzahl+10)*2))
echo "Die Zeilenanzahl +10 mit 2 multipliziert, ergibt: $ergebnis"
Funktionen in Shell Skripten definieren und aufrufen
#!/bin/bashFunktionen müssen vor Ihrem ersten Aufruf definiert werden.
function sag_hallo()
{
echo "Hallo $1"
}
function summe()
{
ergebnis=$(($1 + $2))
return $ergebnis
}
sag_hallo "Welt"
summe 20 10
sum_ergebnis=$?
echo "Die Summe von 20 und 10 ist: $sum_ergebnis"