如何从批处理文件中将用户输入的字符串输入到环境变量中

问题描述 投票:0回答:3

我想提示用户输入一些详细信息,然后将其用作命令行参数。

input batch-file cmd
3个回答
74
投票

您可以将

set
/p
参数一起使用:

SET /P variable=[promptString]

/P 开关允许您将变量的值设置为一行输入 由用户输入。阅读前显示指定的提示字符串 输入行。提示字符串可以为空。

所以,只需使用类似的东西

set /p Input=Enter some text: 

稍后您可以使用该变量作为命令的参数:

myCommand %Input%

但要小心,如果您的输入可能包含空格,那么引用它可能是个好主意:

myCommand "%Input%"

2
投票

一种相当迂回的方式,只是为了完整性:

 for /f "delims=" %i in ('type CON') do set inp=%i

当然,这需要 ^Z 作为终止符,因此约翰内斯的答案在所有实际方面都更好。


0
投票

谢谢!我只是想让我的bat文件不被关闭:

set /p anykey=按任意键继续

效果非常好。唯一的问题是你必须按任意键+回车键。您不能只按 Enter 键并输入空白字符串。

© www.soinside.com 2019 - 2024. All rights reserved.