Экранирование специальных символов в cmd
у меня есть окна .скрипт bat, в котором я пытаюсь запустить команду с паролем в параметре. Пароль, который я хочу использовать, -~!@#$%^&*()_+|-=][{}';:"/.>?,<
.
из того что я читал здесь, я должен бежать ^&|<>
С ^
. От того, что я предполагаю, я должен бежать "
С "
.
это дает мне что-то вроде этого:
runme.exe /password:"~!@#$%^^^&*()_+^|-=^][{}';:"/.^>?,^<"
но это не работает - мое целевое приложение отвечает сбоем входа в систему.
как я должен избежать всех эти символы, чтобы иметь возможность жестко закодировать пароль в моем пакете (игнорируя проблемы безопасности сейчас)?
2 ответов
удвоить цитату в пароле и убедитесь, что полный пароль также заключен в кавычки:
runme.exe /password:"~!@#$%%^^^&*()_+^|-=\][{}';:""/.>?,<"
попробуйте, но если требует кавычек в качестве инкапсуляторов строк для паролей, он не будет работать. Если вам нужно иметь цитату в вашем пароле, то runme.exe должен обеспечить способ избежать его!
runme.exe /password:~!@#$%%^^^&*()_+^|-=\][{}';:"/.>?,<