Hallo Thomas, hallo Leute, Am Freitag, 8. Oktober 2010 schrieb Thomas Moritz:
Am Freitag, 8. Oktober 2010 11:39:35 schrieb Thomas Moritz:
Am Freitag, 8. Oktober 2010 07:44:43 schrieb Thomas Moritz:
Bevor David wieder was zu meckern hat... :-) Den FIFO erzeuge ich jetzt aus Sicherheitsgruenden mit mktemp.
myfifo=$(mktemp myfifo.XXXXXX) rm -f $myfifo mkfifo $myfifo
Damit hast Du das Risiko immerhin auf eine race condition reduziert ;-) (jemand könnte theoretisch zwischen rm und mkfifo eine Datei oder einen Symlink anlegen) mktemp kann leider selbst keinen FIFO anlegen, aber es gibt eine sichere Lösung: mktemp -d und dann in diesem Verzeichnis mkfifo ;-) Außerdem solltest Du bei einem Fehlschlag das Script abbrechen. Ungetestet: mytempdir=$(mktemp -d meinscript.XXXXXX) || exit 1 mkfifo "$mytempdir/myfifo" || exit 1 Zu Deinem eigentlichen Problem "Variablen sollen nach der Subshell noch verfügbar sein" brauchst Du übrigens nicht unbedingt einen FIFO. Es gibt verschiedene Varianten (Ausgabekanäle, "Verlängerung" der Subshell usw.) - siehe http://www.cboltz.de/de/linux/bash/ Gruß Christian Boltz -- Wozu überhaupt ein Script? Das kann man auch direkt aufrufen. Immer dieser Rationalisierungswahn. Demnächst verlangen einige Gurus noch, dass direkt in Binärcode geschrieben wird... [Sandy Drobic in suse-linux] -- To unsubscribe, e-mail: opensuse-programming-de+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-programming-de+help@opensuse.org