138701

Variable in batch Datei schreiben

Hallo zusammen,

echo set /p var=<C:\test.txt>test.bat
echo echo %var%>>D:\test.txt>>test.bat

Ich habe schon einiges probiert...

Doch wie kann ich das so ausführen, dass dann in test.bat auch "%var%" steht??
Auf Facebook teilen
Auf X (Twitter) teilen
Auf Reddit teilen
Auf Linkedin teilen

Content-ID: 441316

Url: https://administrator.de/forum/variable-in-batch-datei-schreiben-441316.html

Ausgedruckt am: 27.04.2025 um 09:04 Uhr

139374
Lösung 139374 17.04.2019 aktualisiert um 11:54:25 Uhr
Goto Top
Indem du die Sonderzeichen der Stdinput Redirects und die Prozentzeichen maskierst
https://www.robvanderwoude.com/escapechars.php
Pjordorf
Pjordorf 17.04.2019 um 11:53:21 Uhr
Goto Top
Hallo,

Zitat von @138701:
Doch wie kann ich das so ausführen, dass dann in test.bat auch "%var%" steht??
Set var="C:\Test.txt"  
Dann steht dir in %var% auch dein gewünschte Inhalt drin. Grundlagen Batch, DOS und Variablen im OS z.B. Windows.

Gruß,
Peter
138701
138701 17.04.2019 um 12:00:07 Uhr
Goto Top
Das stimmt nicht.

mit set /p var=<C:\test.txt wird der Inhalt der Datei als %var% gespeichert.
139374
139374 17.04.2019 aktualisiert um 12:34:04 Uhr
Goto Top
Wäre ja auch zu schwer mal den Link von oben zu lesen face-sad, ich sag ja Osterferien ... da fährt das Oberstübchen Eier spazieren.
echo set /p var=^<C:\test.txt>test.bat
echo echo %%var%%>>D:\test.txt>>test.bat
Pjordorf
Lösung Pjordorf 17.04.2019 aktualisiert um 12:14:21 Uhr
Goto Top
Hallo,

Zitat von @138701:
mit set /p var=<C:\test.txt wird der Inhalt der Datei als %var% gespeichert.
Hat auch niemand behauptet das das nicht auch geht. Es gibt viele wege eine Variable zu definieren und mit Werten zu befüllen. Schau dir dein jetzt geschriebenes mit deinen in der Eröffnungsfrage geschriebenes
echo set /p var=<C:\test.txt>test.bat
mal an. Und auch dein
echo echo %var%>>D:\test.txt>>test.bat
macht nicht wirklich sinn.
Und in %var% wird auch nichts gespeichert. Das ist schlicht die Variabel var im System. Zum aufrufen oder zum mit Arbeiten musst du entweder %var% oder %%var%% oder !var! usw. nutzen.

Gruß,
Peter
138701
138701 18.04.2019 um 11:22:43 Uhr
Goto Top
@139374
Das habe ich selbstverständlich direkt als erstes probiert.
Jedoch hat das bei mir keine Wirkung. face-sad
139374
139374 18.04.2019, aktualisiert am 19.04.2019 um 18:51:28 Uhr
Goto Top
Das habe ich selbstverständlich direkt als erstes probiert.
Blödsinn.
Geht hier einwandfrei, wurde natürlich getestet!!!

Ergebnis der ausgegebenen Bat, genau das was du laut deiner Frage haben wolltest:
set /p var=<C:\test.txt
echo %var%

btw. Lösungen zu markieren die keine Lösungen sind ist natürlich sehr intelligent.
138701
138701 18.04.2019 um 22:40:45 Uhr
Goto Top
An sich wenn es bei dir funktioniert ist es doch eine Lösung.

Ich nehme an es liegt daran, dass mein Windows nicht vollständig gepached ist..
Pjordorf
Pjordorf 19.04.2019 um 18:09:20 Uhr
Goto Top
Hallo,

Zitat von @138701:
Ich nehme an es liegt daran, dass mein Windows nicht vollständig gepached ist..
Das ist eine Hahnebüchle Vermutung, da dies
set /p var=<C:\test.txt
echo %var%
so selbst im reinen MSDOS (nix Windows) funktioniert.