听起来我不能把"?" 在批处理(.bat)脚本中的提示:
set /p AREYOUSURE= Are you sure (Y/[N]) ?
它与消息崩溃:
?这时出人意料.
但是,它没有""
注意:我正在运行Windows 7 64位.
这不是因为问号,而是因为右括号.您正在块中使用此语句,例如
if foo ( set /p AREYOUSURE= Are you sure (Y/[N]) ? )
右括号关闭块,然后让解析器偶然发现块后面的第一个字符.
您可以转义右括号:
set /p AREYOUSURE= Are you sure (Y/[N]^) ?
或者只是使用引号,我总是建议:
set /p "AREYOUSURE=Are you sure (Y/[N])?"
对于我个人使用的类似问题choice
,但是:
choice /m "Are you sure"
但是,只按返回时,您无法进行默认选择.