Am Montag, 24. Januar 2005 20:32 schrieb christian zimmermann:
ich habe da ein Problem mit einem Shell Script, und zwar folgendes. Ich möchte via ssh checken ob ein bestimmter rechner ein bestimmtes verzeichniss hält, hält er diese soll der hostname als variable gespeichert werden.
RSYS=`ssh root@db1.domain.com if [ -d /ha/db2/db2inst1/ ] then RSYS=$DB1 else RSYS=$DB2 fi`
das kann doch so gar nicht gehen. man kann ssh nur ein Programmnamen angeben, welches dann ausgeführt werden soll: If command is specified, command is executed on the remote host instead of a login shell. if [...] ist aber kein Programm, sondern wird von der shell interpretiert. Also die ganze if-Anweisung in ein kleines Script packen und das dann aufrufen. Dessen Ausgabe steht dann wieder in der Shell-variablen. BTW:
if [ -d /ha/db2/db2inst1/ ] then RSYS=$DB1 else RSYS=$DB2 fi
vor dem "then", "else" und "fi" fehlt ein ; (Semikolon) Das muß da stehen, wenn alles auf einer Zeile steht. Bye Jürgen -- Dr.rer.nat. Juergen Vollmer, Viktoriastrasse 15, D-76133 Karlsruhe Tel: +49(721) 9204871 Fax: +49(721) 24874 Juergen.Vollmer@informatik-vollmer.de www.informatik-vollmer.de Internet-Telefonie: www.skype.com Benutzer: juergen.vollmer