Search code examples
inputbatch-filecmd

How to input a string from user into environment variable from batch file


I want to prompt the user for some input detail, and then use it later as a command line argument.


Solution

  • 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%"