On Thu 02 Apr 2009, Andre Hübner wrote:
Verstehe ich nicht. Wenn Du die Datei geholt hast, liegt so doch lokal. Und dann kannst Du doch wie oben beschrieben fortfahren. Also, erst die Datei holen, dann cat...; usw..
ne, die Datei soll eigentlich nie lokal liegen. die liegt zentral auf einem ftp wo ich es einfach per lynx --source hole und an /bin/sh pipen will. eine lokale kopie der datei liegt nicht vor.
dann müsste ich das ändern das ich ein script hab das die entfernte datei holt, lokal ablegt und lokal ausführt. dann könnte ich das read sicherlich verwenden da ich nichts pipen muss aber ich hatte gehofft das es auf dem bisherigen weg geht, also direkt einen eingehden stream an /bin/sh weiterpipen und gut...
sobald ein | zeichen vor einem read kommt ist es mit dem "read" leider komplett vorbei.
Da steht doch keine pipe vor read.
ja, das war nur beispielhaft. weil es ist irgendwie wie ein teufelskreis ich hab auch probiert innerhalb des ersten scriptes dann ein zweites script dass das read enthält per wget zu speichern und dann lokal aufzurufen. dies geht aber genauso schief, dahe rmeinte ich das ein read nicht mehr funktioniert sobald vorher in der aufrufskette irgendwo ein | vorkommt. komische sache...
Also, ich denke, Du solltest Dein Problem nochmal klar beschreiben. Wahrscheinlich hat das niemand hier voll verstanden, ich zumindest nicht. "read" liest von stdin. Wenn die Shell das Script von stdin liest, liest read eben die nächste Zeile aus dem Script, so wie Du es programmiert hast. Ich habe den Eindruck (wie gesagt, ich habe nicht wirklich verstanden, was Du willst), daß Du mit read irgendwas anderes lesen willst. Meintest Du vielleicht sowas? echo 'echo 111; read -t3 </dev/tty; echo ">>$REPLY<<"; echo 222' | bash Torsten -- Need professional mod_perl support? Just hire me: torsten.foertsch@gmx.net -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org