ich komme einfach nicht weiter.
Ich möchte unter sun solaris ein KSH-Skript schreiben, welches bestimmte Prozesse filtert und anschließend anzeigt. (Also nichts wildes)
Das ganze funktioniert auch soweit. Nur möchte ich jetzt noch bestimmte Ausgaben von ps -awwx nicht mit angezeigt bekommen.
Um nicht alles mit grep -v ... schreiben zu müssen würde ich es gerne mit einem Array lösen.
Dies sieht wie folgt aus:
Code: Alles auswählen
# Array error_filter
set -A error_filter grep less tail cat more
# Expression definieren
for err in ${error_filter[*]}; do
expression=$expression"|grep -v $err"
done
exp=$(echo $expression|sed -e 's/^|\(.*\)$/\1/g')
echo "EXP: $exp:EXP"
Code: Alles auswählen
EXP: grep -v grep|grep -v less|grep -v tail|grep -v cat|grep -v more:EXP
Code: Alles auswählen
for i in `ps -awwx | "${exp}" | /usr/bin/grep admin | /usr/bin/awk '{print $1}'`
do
...
Code: Alles auswählen
./my_script.ksh[19]: /usr/bin/grep -v grep|/usr/bin/grep -v less|/usr/bin/grep -v tail|/usr/bin/grep -v cat|/usr/bin/grep -v more: not found