转义cmd中的特殊字符

NOt*_*Dev 12 cmd escaping

我有一个Windows .bat脚本,我尝试在参数中运行带密码的命令.我希望能够使用的密码是~!@#$%^&*()_+|-=\][{}';:"/.>?,<.

从我读过什么在这里,我要逃跑^&|\<>^.从我认为,我应该逃跑"\".

这给了我类似的东西:

runme.exe /password:"~!@#$%^^^&*()_+^|-=^\][{}';:\"/.^>?,^<"
Run Code Online (Sandbox Code Playgroud)

但它不起作用 - 我的目标应用程序响应登录失败.

我应该如何逃避所有这些字符才能在我的批处理中硬编码密码(现在忽略安全问题)?

Chr*_*n.K 15

将密码中的引号加倍,并确保完整的密码也包含在引号中:

runme.exe /password:"~!@#$%%^^^&*()_+^|-=\][{}';:""/.>?,<"
Run Code Online (Sandbox Code Playgroud)