Page 1 of 1

Variable über mehrere Zeilen schreiben

Posted: 12 Apr 2018, 23:39
by Folllast
Hallo,

ich schreibe gerade einen Script, der in der Endkonsequenz mittels HTTP-Post an eine div. Website schickt. Mir geht es jetzt darum, wie ich eine Variable über mehrere Zeilen schreiben kann.
also mir schwebt sowas vor:

Code: Select all

httpbody := "blablabla
bliblablubb
dumdidudmdudmdum"
in der Dokumentation gibt es folgendes Beispiel:
FileAppend, ; Das Komma ist in diesem Fall erforderlich.
(
open host.domain.com
username
password
binary
cd htdocs
put %VarMitNamenDerZieldatei%
delete EineAndereDatei.htm
rename AlterDateiname.htm NeuerDateiname.htm
ls -l
quit
), %FTPBefehlDatei%
geht das wie oben geschrieben auch bei Variablen?

DAnke!

Re: Variable über mehrere Zeilen schreiben

Posted: 13 Apr 2018, 02:19
by just me
Moin,

die Beschreibung zu FileAppend enthät zwei Beispiele. Das zweite Beispiel hast Du zitiert, das erste enthält einen nützlichen Link auf Fortsetzungsbereich.

Kommando-Syntax:

Code: Select all

Var =
(
Erste Zeile.
ZweiteZeile.
)
Ausdrucks-Syntax:

Code: Select all

Var := " ; einleitendes "
(
Erste Zeile.
ZweiteZeile.
)" ; abschließendes "
In der Ausdrucks-Syntax gibt es noch folgende Alternative, bei der man allerdings ein paar Zeichen mehr tippen musss:

Code: Select all

Var := "Erste Zeile.`n" ; den Zeilenumbruch bzw. das Trennzeichen muss man in diesem Fall selbst vorgeben
     . "ZweiteZeile." ; letzte Zeile ohne Zeilenumbruch
Die Ausdrucks-Syntax hat aber auch Einschränkungen. So werden z.B. innerhalb des mit "-Zeichen eingeschlossenen Bereichs keine Variablen (%Var%) ersetzt. Außerdem müssen in diesem Bereich enthaltene "-Zeichen gedoppelt (escaped) werden.Eine Lösung sähe dann z.B. so aus:

Code: Select all

Var := "Tag"
Out := "
(
Guten " . Var . ",
""Zweite"" Zeile.
)"
Das sieht allerdings nicht wirklich 'elegant' aus.

Re: Variable über mehrere Zeilen schreiben

Posted: 13 Apr 2018, 02:31
by Folllast
Hallo, vielen Dank! Das hilft mir jetzt schon sehr weiter!

jetzt muss ich nurnoch den richtigen, HTTP-Request zusammenschustern!