In Batch Variablen als Textdateien speichern und wieder auslesen
Hallo, ich fange gerade an, Batch zu programmieren und würde gerne eine Variable als txt-Datei speichern und wieder auslesen.
Z.B. Fragt das Programm am Anfang "Bist du neu?" (Y/N) Bei Y wird nach dem Namen gefragt und dieser in einer Textdatei als Variable gespeichert. Beim nächsten Aufruf des Programmes drückt man N und das Programm gibt aus: "Hallo, (hier die Variable, die in der txt-Datei gespeichert wurde)!" Bitte schreibt ein Code Beispiel
Danke im Voraus.
3 Antworten
@echo off
:Opening
set /p MainQuestion=Bist du neu?
:MainQuestion
IF /i "%MainQuestion%" equ "Y" (
goto :Name
)
IF /i "%MainQuestion%" equ "N" (
goto :Next
) else (
goto :MainQuestion
)
:Name
set /p Name=Wie ist dein Name?
ECHO %Name%>Variable.txt
echo Hallo, %Name%.
PAUSE >NUL
:Next
echo [Script]
PAUSE >NUL
Mir ist ein kleiner Patzer in Zeile 13 aufgetreten.
Das Sprungziel (goto :MainQuestion) ist natürlich falsch - richtig wäre: goto :Opening
:]
Ich weiß nicht, ob die Windows Shell Werte aus einer Datei in eine Variable speichern kann. Mit der Linux Shell wäre das kein Problem.
Aber: wäre das nicht in Java oder C viel einfacher? Es gibt gcc auch für Windows, somit hättest du einen freien C Compiler zur Verfügung.
Daten und Variable lassen sich in einer Datei speichern.
Einfachster Weg ist dieser - wie von Shades93 bereits beschrieben -
echo Daten >Dateiname.txt
Ebenso einfach lässt es sich aber auch wieder in eine variable einlesen
set /p Variablenname=<Dateiname.txt