On Thu 02 Apr 2009, Andre Hübner wrote:
ich habe folgendes Beispielscript (readtest.sh):
#!/bin/bash echo "test" read -t 5 testvar echo $testvar echo "ende"
Direkt auf der Console ausgeführt funktioniert das einwandfrei. In diesem Fall soll das Script aber entfernt auf FTP liegen und nur an /bin/sh gepiped werden. Der Einfachheit halber kann man das simulieren mit:
cat readtest.sh | /bin/sh
Also, es tut genau das, was ich erwarten würde: $ cat x.sh #!/bin/bash f() { echo 111; read -t5; echo '>>>'$REPLY'<<<'; echo 222; } f $ echo huhu | ./x.sh 111
huhu<<< 222 $ (sleep 10;echo huhu) | ./x.sh 111 <<< 222 $ cat x.sh | /bin/bash 111 <<< 222 $ (cat x.sh; echo huhu) | /bin/bash 111 huhu<<< 222 $ (cat x.sh; sleep 10; echo huhu) | /bin/bash 111 <<< 222 /bin/bash: line 5: huhu: command not found
Vielleicht ist das, was Du suchst ja sowas: (cat x.sh; read -t4; echo "$REPLY") | /bin/bash wobei Du den Timeout im Script selbst nicht mehr brauchst. 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