Hallo, ich möchte ein Sript schreiben, in dem eine CF-Karte mit einem vorhandenen Image beschrieben wird. Leider funktioniert das Script nicht immer, von zehn Durchläufen funktionieren drei. Meist gibt es schon nach der zweiten Zeile des folgenden Ausschnitts einen Fehler. Später sollen übrigens die ganzen echo-Zeilen raus und die K_FORTSCHRITT-Variable mit kdialog in einer Progressbar ausgegeben werden. `nice -n 19 sudo dd if=$FILENAME of=/dev/hdc > /home/bla/dd.txt 2>&1 &` PID=$(echo `ps ax | grep '[o]f /dev/hdc' | awk '{print $1}'`) echo $PID sudo kill -USR1 $PID FORTSCHRITT=$(echo `more /home/bla/dd.txt | grep 'transferred' | awk '{print $1}'`) echo $FORTSCHRITT K_FORTSCHRITT=$(echo "$FORTSCHRITT/1024" | bc) echo $K_FORTSCHRITT while [ "$K_FORTSCHRITT" -lt "$FILE_GROESSE" ] ; do rm -f /home/bla/dd.txt touch /home/bla/dd.txt sudo kill -USR1 $PID FORTSCHRITT=$(echo `more /home/bla/dd.txt | grep 'transferred' | awk '{print $1}'`) echo $FORTSCHRITT K_FORTSCHRITT=$(echo `"$FORTSCHRITT/1024" | bc`) echo $K_FORTSCHRITT done In Zeile 3 soll die vorher erkannte PID vom Aufruf in Zeile 1 angezeigt werden, statt dessen bekomme ich schon eine Fehlermeldung bezüglich der vierten Zeile, als ob der kill-Befehl nicht richtig geschrieben wurde: Usage: kill pid ... Send SIGTERM to every process listed. kill signal pid ... Send a signal to every process listed. kill -s signal pid ... Send a signal to every process listed. kill -l List all signal names. kill -L List all signal names in a nice table. kill -l signal Convert between signal numbers and names. Manchmal wird aber eben auch die PID ausgegeben, und das Script läuft normal weiter. Woran kann das liegen? Vielen Dank schonmal, Jens PS: Ihr habt mir ja schon zu meinem letzten Posting geschrieben, daß man die PID auch einfacher bekommt, aber wohl nur wenn kein 'nice' und 'sudo' vor der eigentlichen Anweisung stehen (Zeile 1). Jedenfalls habe ich es mit $! nicht hinbekommen.