Je veux demander à l'utilisateur des détails d'entrée, puis l'utiliser plus tard comme argument de ligne de commande.
Vous pouvez utiliser set
avec le /p
argument:
SET /P variable=[promptString]
Le commutateur/P vous permet de définir la valeur d'une variable sur une ligne d'entrée entrée par l'utilisateur. Affiche la chaîne d'invite spécifiée avant de lire la ligne d'entrée. L'inviteString peut être vide.
Donc, utilisez simplement quelque chose comme
set /p Input=Enter some text:
Plus tard, vous pouvez utiliser cette variable comme argument d'une commande:
myCommand %Input%
Attention cependant, si votre entrée peut contenir des espaces, c'est probablement une bonne idée de la citer:
myCommand "%Input%"
Une façon plutôt détournée, juste pour être complet:
for /f "delims=" %i in ('type CON') do set inp=%i
Bien sûr, cela nécessite ^ Z comme terminateur, et donc la réponse de Johannes est meilleure à tous égards.