Per Batch neue Batch schreiben
Hallo,
folgende Aufgabenstellung bereitet mir Kopfzerbrechen:
ich möchte in einer Batch-Ausführung eine neue Batch-Datei erstellen.
Darin möchte ich, daß die Ausgabe von psloglist.exe in eine Textdatei geschrieben wird.
Ich hab folgendes versucht:
echo psloglist.exe \\%whsname% -u "%whsuser%" -p %whspass% -n 1 -i 2049 homeserver > psloglist.txt >> C:\WhsRemoteNotification\createmail.bat
d.h. psloglist.exe \\%whsname% -u "%whsuser%" -p %whspass% -n 1 -i 2049 homeserver > psloglist.txt soll danach in der createmail.bat stehen
Das ganze funktioniert leider nicht, es wird mir zwar die Zeile in die createmail.bat geschrieben, aber ohne das "> psloglist.txt"
Habe schon versucht, mit Anführungszeichen oder Klammern zum Erfolg zu kommen, auch ohne Erfolg.
Wie kann ich das umsetzen?
Bin für jeden Tip dankbar...
Gruß,
chapolote
folgende Aufgabenstellung bereitet mir Kopfzerbrechen:
ich möchte in einer Batch-Ausführung eine neue Batch-Datei erstellen.
Darin möchte ich, daß die Ausgabe von psloglist.exe in eine Textdatei geschrieben wird.
Ich hab folgendes versucht:
echo psloglist.exe \\%whsname% -u "%whsuser%" -p %whspass% -n 1 -i 2049 homeserver > psloglist.txt >> C:\WhsRemoteNotification\createmail.bat
d.h. psloglist.exe \\%whsname% -u "%whsuser%" -p %whspass% -n 1 -i 2049 homeserver > psloglist.txt soll danach in der createmail.bat stehen
Das ganze funktioniert leider nicht, es wird mir zwar die Zeile in die createmail.bat geschrieben, aber ohne das "> psloglist.txt"
Habe schon versucht, mit Anführungszeichen oder Klammern zum Erfolg zu kommen, auch ohne Erfolg.
Wie kann ich das umsetzen?
Bin für jeden Tip dankbar...
Gruß,
chapolote
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 91243
Url: https://administrator.de/forum/per-batch-neue-batch-schreiben-91243.html
Ausgedruckt am: 21.05.2025 um 03:05 Uhr
4 Kommentare
Neuester Kommentar

Servus,
probier es mal so herum:
Gruß
probier es mal so herum:
echo psloglist.exe \\%whsname% -u "%whsuser%" -p %whspass% -n 1 -i 2049 homeserver ^> psloglist.txt ^>> C:\WhsRemoteNotification\createmail.bat
Gruß
Moin chappi,
ich war noch ein bisschen zögerlich, diesen Beitrag zu schliessen, weil...
Das zweite Caret ist T-moBeil sicherlich versehentlich mit reingerutscht, okay.
Aber das deshalb ein ">" in die Datei geschrieben wird,liegt an diesem Verhalten beim Zusammenspiel von "echo" und "redirection":
[Demo am CMD-Prompt]
Wie Du siehst, wird eventueller Echo-Text NACH dem Zielnamen stillschweigen mit umgeleitet... *axelzuck*
Um das als Bug zu bezeichnen, reicht es nicht und als Feature fällt mir auch kein sinnvoller Anwendungsfall ein... ist also wohl der übliche Praktikantenpfusch.
Also meine Anmerkung:
Das zweite Caret muss nicht irgenwo anders hin, sondern zurück in die Vorratsdose.
Hier brauchst Du es gar nicht.
Denn mit dem jetzigen zweiten Caret weist Du den CMD-Interpreter an das Leerzeichen zwischen "psloglist.txt" und ">>" als einfaches Leerzeichen zu betrachten.
Eine Herausforderung, der selbst ein M$-CMD-Interpreter gewachsen sein sollte..
So oder so - lass das zweite Caret weg und entscheide Dich,
ob Du immer eine neue Datei anlegen willst (ein ">") oder an eine bestehende anfügen willst (zwei ">", also ">>").
Anfügen macht hier wenig Sinn, die Datei soll ja neu angelegt werden.
Grüße
Biber
ich war noch ein bisschen zögerlich, diesen Beitrag zu schliessen, weil...
ansonsten schreibt er das erste > noch mit in die Datei.
Dat stimmt.Lediglich das letzte "Dächchen" muß direkt nach psloglist.txt stehen,
Dat nich.Das zweite Caret ist T-moBeil sicherlich versehentlich mit reingerutscht, okay.
Aber das deshalb ein ">" in die Datei geschrieben wird,liegt an diesem Verhalten beim Zusammenspiel von "echo" und "redirection":
[Demo am CMD-Prompt]
>echo bla>text.txt blubb
(=13:04:46 D:\temp=)
>type text.txt
bla blubb
Um das als Bug zu bezeichnen, reicht es nicht und als Feature fällt mir auch kein sinnvoller Anwendungsfall ein... ist also wohl der übliche Praktikantenpfusch.
Also meine Anmerkung:
Das zweite Caret muss nicht irgenwo anders hin, sondern zurück in die Vorratsdose.
Hier brauchst Du es gar nicht.
Denn mit dem jetzigen zweiten Caret weist Du den CMD-Interpreter an das Leerzeichen zwischen "psloglist.txt" und ">>" als einfaches Leerzeichen zu betrachten.
Eine Herausforderung, der selbst ein M$-CMD-Interpreter gewachsen sein sollte..
So oder so - lass das zweite Caret weg und entscheide Dich,
ob Du immer eine neue Datei anlegen willst (ein ">") oder an eine bestehende anfügen willst (zwei ">", also ">>").
Anfügen macht hier wenig Sinn, die Datei soll ja neu angelegt werden.
Grüße
Biber