[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Bash-Skript, while-Schleife mit ssh



Hi!

2011/3/19 Harald Weidner <hweidner-lists@gmx.net>
>
> Hallo,
>
> Alexander Skwar <askwar@yahoo.com>:
>
> >Das es übrigens zuerst an ssh und nicht am Remote ./Befehl liegt, kann man
> >leicht daran erkennen, das die while Schleife auch dann abbricht, wenn man
> >Remote nur zB "hostname" aufruft (also Einen Befehel, der nicht von stdin
> >liest).
>
> Tut es das?

Sonst hätte ich's nicht geschrieben ;)

MacBook-Pro:~ alex$ printf '1\n2\n3\n' | while read z; do echo $z ;
ssh pp hostname ; done
1
pp

MacBook-Pro:~ alex$ printf '1\n2\n3\n' | while read z; do echo $z ;
ssh pp hostname < /dev/null ; done
1
pp
2
pp
3
pp

Lokal: Mac OSX, Remote: Squeeze

Ist keine Spezialität von OSX, sondern habe
ich bisher überall so gehabt.

> harald@local:~/test$ ./loop.sh
> ********* 1
> remote
> ********* 2
> remote
> ********* 3
> remote

Nicht reproduzierbar. Hier bricht loop, wie
zu erwarten, nach dem ersten Durchlauf
ab.

> Wenn sich das Skript bei dir anders verhält, kann das zahlreiche Ursachen
> haben. Hinter dem simpel aussehenden "ssh host command" kann sich auf der
> Remote Seite durchaus viel Komplexität verbergen. Je nach Konfiguration des
> sshd wird vielleicht /sbin/login aufgerufen. Es wird die Shell des Benutzers
> gestartet, die möglicherweise Startup-Skripte wie z.B. ~/.bashrc abarbeitet.

Unter welchen Umständen erreicht man denn ein
Verhalten, wie Du es oben demonstriert hat?

> Daher ist das Skript eine fragile Konstruktion und man sollte auf jeden Fall
> ssh mit einer leeren Standardeingabe starten. Die Aussage, dass der ssh
> Client von sich aus alles auf der Standardeingabe liest, ist aber nicht
> richtig.

Trotzdem ist es bisher aber bei mir unter
den verschiedensten Konstruktionen *immer*
so gewesen, das ssh direkt abgebrochen hat.
Meine Erklärung war (für mich) bisher, das
ssh alles auf stdin "weg"liest.

Alexander
--
↯    Lifestream (Twitter, Blog, …) ↣ http://alexs77.soup.io/ ;    ↯
↯ Chat (Jabber/Google Talk) ↣ a.skwar@gmail.com , AIM: alexws77  ↯


Reply to: