Bash Variable zuweisen

OsunSeyi

OsunSeyi

Foren As
Hi,

folgendes hat bis zu letzten upgrade prima funktioniert

Code:
#/bin/sh
 doit=$(
 ftp -n<<@@@
             open okonfo-rao-kawawa.de
             user ...
             ...
        bye
        @@@)

Den Rückgabewert von $doit konnte ich dann auswerten ("Verbindung gescheitert")
Jetzt heißt es:
Code:
./FTP.sh: line 4: unexpected EOF while looking for matching `)'
./FTP.sh: line 12: syntax error: unexpected end of file

Ich weiß, ihr werdet mich für doof halten, aber was ist da anders als früher (muss da anders sein)? :hilfe2:
PS Vielleicht ist ja eine Ungebungsvariable anders gesetzt?
 
Zuletzt bearbeitet:
Ich habe schon lange kein ftp mehr gebraucht und auch nichts zum testen zur Verfügung, deswegen nur ein Schuss ins Blaue: "/bin/sh" ist bei Dir immer noch ein Link auf "/bin/bash"? Mal den Shebang ändern. Eventuell helfen auch Anführungszeichen:
Code:
#!/bin/bash
doit="$(...
...
)"
 
Hab's gefunden.
Es geht nicht, wenn die letzte Zeile vom here-doc eingerückt ist: "^ @@@)"
So geht's fehlerfrei:
Code:
#!/bin/sh

out=$(
	ftp -n<<@@@
	open http:website
	user ...
	bye
@@@
)

echo $out
Warum sich das geändert hat, weiß ich nicht.

Ps
Der Shebang war natürlich falsch, aber nur hier aus versehen. So schlimm steht's noch nicht ;-)
 
Zuletzt bearbeitet:
hm, es hat sich eigentlich nicht geändert - sondern war eigentlich schon immer so.

Ich würde es eher so sehen, daß es Zufall war, daß es schon mal funktioniert hat...
 

Ähnliche Themen

OOo 2.0.4 Source Fehler

CGI laesst sich nicht ausfuehren

Zurück
Oben