tillixx07
Goto Top

Batch: Übergabe einer Echo-Ausgabe in eine zweite Batch mit "call"

Guten Tag zusammen,
mein Vorhaben ist folgendes:
Ich habe eine Batchdatei, die ein Backup ausführt und dann ein Log erstellt. Das funktioniert.
In der Batch rufe ich mailsend.exe auf, um je nach Erfolg oder Misserfolg eine Mail zu versenden. Das funktioniert auch.
Das sieht (im Erfolgsfall) so aus:
echo Backup OK
mailsend.exe .... -sub "Backup OK" ...

Nun würde ich gerne den Mailversand in eine separate Batch auslagern und diese mit "call" in die erste Batch einfügen. Auch das habe ich noch hinbekommen.
Das sieht dann so aus:
echo Backup OK
call backup_OK.bat

Nun wäre es schön, wenn ich die Echo-Ausgabe in die zweite Batch übergeben könnte, so dass diese im Betreff z.B. die "Echo-Ausgabe" statt eines festen Textes verwendet. So könnte ich eine einzige Batch für den Mailversand verwenden und müsste nicht je nach Ergebnis mehrere anlegen.

Ist das grundsätzlich möglich? Ich müsste dann quasi eine Variable übergeben und mailsend müsste diese im Subject umsetzen?

Schon mal vielen Dank fürs Lesen und viele Grüße
tillixx

Content-ID: 668854

Url: https://administrator.de/contentid/668854

Ausgedruckt am: 19.10.2024 um 09:10 Uhr

Crusher79
Crusher79 18.10.2024 um 14:18:38 Uhr
Goto Top
Hallo,

%1 ist das erste Argument das über geben wird.

Wenn du Text mit "Das ist ein Test" hinten dran schreibst kannst du es mit %1 in der zweiten Batch auslesen.
tillixx07
tillixx07 18.10.2024 um 14:54:23 Uhr
Goto Top
Ah, OK.

Dann würde das so aussehen:
echo %1 Backup OK
mailsend.exe .... -sub "%1" ... ?
Crusher79
Crusher79 18.10.2024 um 15:12:29 Uhr
Goto Top
Nein...

%1 ist auch nur die halbe Wahrheit.

https://stackoverflow.com/questions/27595440/how-to-pass-variables-from- ...

Schau mal dort. Da wird Variable definiert und dann in der 2. Bat verwertet. Denke das macht mehr Sinn.