我知道这是一个经常被问到的问题,但是我尝试了几种逃脱方法,但没有一种解决方案有效。这是有关该问题的更多详细信息:
如果我直接运行命令:
serverbackup -f TServerBackup -d [enter]
please input password:
然后输入密码abcd%//' 那么该命令将运行并成功完成。
但是如果我将命令放在bat文件中
CALL serverbackup -f TServerBackup -d -p abcd%//'
并运行bat文件,它说密码不正确。 (注意:我在另一台机器上尝试了同一蝙蝠,但密码不同,没有特殊的字符,它可以工作,所以命令和蝙蝠文件本身是正确的。)
如果我尝试以以下方式逃脱
:CALL serverbackup -f TServerBackup -d -p abcd%%//'
CALL serverbackup -f TServerBackup -d -p "abcd%//'"
CALL serverbackup -f TServerBackup -d -p "abcd%%//'"
它们都不起作用。我很确定/不是特殊字符,原因必须是%和',但是我不知道如何使bat文件正常工作。
更新:以前我认为密码使用单引号,该单引号位于键盘中双引号的下方。我怎么知道密码实际上使用了另一个非ASCII单引号,而不是计算机键盘上的单引号。
更新:根据michale_heath和Mofi的回答,罪魁祸首是',因为它是一个非常特殊的字符。但是我仍然不知道如何解决它。
如果有任何想法,谢谢。