Runas CMD не работает из-за цитирования - PullRequest
0 голосов
/ 03 января 2019

Я использую эту строку в командном файле:

Runas /user:domain\user "cmd /C echo Test > C:\Program Files\Install2AgentService\Install2AgentWinService.exe.config"

Проблема в том, что это работает, только если путь к файлу не имеет пробелов.И я не могу поставить путь в кавычках, как обычно, потому что вся CMD-команда должна быть в кавычках.

Runas /user:domain\user "cmd /C echo Test > "C:\Program Files\Install2AgentService\Install2AgentWinService.exe.config""

Даже экранирование двойных кавычек не работает.

Runas /user:domain\user "cmd /C echo Test > ""C:\Program Files\Install2AgentService\Install2AgentWinService.exe.config"""

У кого-нибудь есть идеи, как справиться с этой проблемой?Спасибо!

1 Ответ

0 голосов
/ 03 января 2019

Избегайте внутренних двойных кавычек, используя \ Обратный Солидус (обратная косая черта) следующим образом:

Runas /user:domain\user "cmd /C echo Test>\"C:\Program Files\Install2AgentService\Install2AgentWinService.exe.config\""

Ресурсы (эквивалент):

Пример использования:

d:\bat> runas /noprofile /user:user "cmd /V:ON /C whoami&echo \"!CD!\"&echo !CD! Test runas>>\"%CD%\test runas.txt\"&pause"
Enter the password for user:
Attempting to start cmd /V:ON /C whoami&echo "!CD!"&echo !CD! Test runas>>"d:\bat\test runas.txt"&pause as user "MY-PC\user" ...

d:\bat> type "test runas.txt"
C:\WINDOWS\system32 Test runas
C:\WINDOWS\system32 Test runas
...