Ошибка пути команды Runas - PullRequest
0 голосов
/ 28 января 2020

Привет, я пытаюсь запустить SQL как пользователь из команды, чтобы я мог поместить его в контекстное меню, но ssms открывается с «Не удается найти файл x». Мое лучшее предположение состоит в том, что пробелы вызывают проблему, поскольку при нормальном запуске ssms.exe "\\remote\1. folder\has spaces.sql" будет игнорировать пробелы, но runas требует, чтобы и программа, и файл были в одинаковых двойных кавычках.

Это Мне нужна команда:

runas /provile /env /user:domain\username "ssms.exe \\remote\1. folder\has spaces.sql"

Конечно, следующая команда работает нормально:

runas /provile /env /user:domain\username "ssms.exe c:\a\tmp\s.sql"

У меня нет возможности переименовывать папки или файлы, но мне регулярно нужно выполнять запросы как другой пользователь. Есть ли способ, которым я могу как-то избежать пробелов или наложить двойные кавычки?

Спасибо

РЕДАКТИРОВАТЬ: Поскольку я использую контекстное меню, я передаю вышеупомянутую команду с% 1 вместо фактический путь к файлу в реестре и командном окне закрываются слишком быстро, чтобы я мог увидеть ошибку, но следующая команда не работает. У меня есть ощущение, что это все еще проблема, но я не могу доказать это, но любая помощь будет признательна.

runas /provile /env /user:domain\username "ssms.exe \"%1""

(с% 1, равным \\remote\1. folder\has spaces.sql)

1 Ответ

0 голосов
/ 30 января 2020

Escape-символ \ за комментарий aschipfl.

...