我有一些现有的命令文件要求输入密码。这些密码现在是系统生成的,可能包含特殊字符,例如竖线 |。
set /p pw=Enter password:
当 set 命令解析管道时,它就到此结束。显然,我需要能够输入和解析整个变量。
- 这必须使用标准 Windows 命令(批处理)或 PowerShell;无需其他软件
答案1
答案2
当 set 命令解析管道时,它就到此结束
您需要使用转义字符:
^
转义符。在命令符号前添加转义字符可以将其视为普通文本。这些通常具有特殊含义的字符可以进行转义,然后像常规字符一样处理
: & \ < > ^ |
例如
Echo THIS ^& THAT Echo Heading1 ^| heading2 ^| heading3 Echo The Escape character looks like this ^^
来源引号、转义符、分隔符 - Windows CMD - SS64.com