I want to prompt the user for some input detail, and then use it later as a command line argument.
+2
A:
You can use set
with the /p
argument:
SET /P variable=[promptString]
The /P switch allows you to set the value of a variable to a line of input entered by the user. Displays the specified promptString before reading the line of input. The promptString can be empty.
So, simply use something like
set /p Input=Enter some text:
Later you can use that variable as argument to a command:
myCommand %Input%
Be careful though, that if your input might contain spaces it's probably a good idea to quote it:
myCommand "%Input%"
Joey
2009-10-04 09:05:02
A:
A rather roundabout way, just for completeness:
for /f "delims=" %i in ('type CON') do set inp=%i
Of course that requires ^Z as a terminator, and so the Johannes answer is better in all practical ways.
EFraim
2009-10-04 09:08:42
That one is ... interesting. Now you only need to educate the user that only her *last* line entered will be used :-)
Joey
2009-10-04 09:10:24