Я знаю, что это часто задаваемый вопрос, но я пробовал несколько способов избежать, и ни одно из решений не работает. Вот более подробно о вопросе:
если я запускаю команду напрямую:
serverbackup -f TServerBackup -d [enter]
please input password:
тогда я набираю пароль abcd% // '
затем команда будет выполнена и успешно завершена.
но если я помещу команду в файл bat как
CALL serverbackup -f TServerBackup -d -p abcd%//'
и запустите файл bat, он говорит, что пароль неверный. (примечание: я пробовал ту же летучую мышь на другом компьютере с другим паролем без специального символа, он работает, поэтому команды и файл 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, виновник - «потому что это очень особенный символ. Но все же я не знаю, как решить эту проблему.
Спасибо, если у вас есть идеи.