2015-05-26 5 views
0

Мне нужно написать пакетный скрипт, который открывает определенный файл xls от имени другой учетной записи пользователя. RunAs отдельно работает нормально:Runas определенный файл xls

runas /profile /user:username "C:\Program Files (x86)\Microsoft Office\Office15\EXCEL.EXE" 

первенствует разъем также OK:

"C:\Program Files (x86)\Microsoft Office\Office15\EXCEL.EXE /r C:\fol der\file.xls" 

, но вместе это не так:

runas /profile /user:username "C:\Program Files (x86)\Microsoft Office\Office15\EXCEL.EXE /r C:\fol der\file.xls" 

Он не может обработать путь файла XLS, если есть место где угодно.

+0

Вы могли бы попытаться добавить^до пространства, чтобы избежать его. '' "C: \ Program Files (x86) \ Microsoft Office \ Office15 \ EXCEL.EXE"/r "C: \ fol der \ file.xls" "' тоже может помочь. – MichaelS

+0

Попробуйте следующее: http://ss64.com/nt/syntax-esc.html – MichaelS

+0

Проблема в том, что у меня нет пути к файлу xls. Я использую переменную '% cd%' как bat, и файлы xls помещаются в одну и ту же папку. Поэтому я не знаю, что сбежать заранее. – fishmong3r

ответ

2

В соответствии с RUNAS - Execute a program under a different user account: RUNAS используется обратный слэш \ как экранирующий символ (не стандарт ^ используется другими командами CMD). Кроме того, runas /? дает следующий пример буквально:

runas /env /user:[email protected] "notepad \"my file.txt\"" 

Следовательно, ваша линия должна быть следующей:

runas /profile /user:username "\"C:\Program Files (x86)\Microsoft Office\Office15\EXCEL.EXE\" /r \"C:\fol der\file.xls\"" 
Смежные вопросы