- 当独立执行时,它们执行得非常完美。
runas
当在 2 个连续的语句中执行时,在完成chrome.exe
之前就执行了。robocopy
runas
当将其放在以 分隔的单个字符内时&
,它将无法正确执行。为什么?
runas /savecred /user:chrome "robocopy C:\Users\chrome\AppData\Local\Google\Chrome-Backup C:\Users\chrome\AppData\Local\Google\Chrome /mir & \"!ProgramFiles(x86)!\Google\Chrome\Application\chrome.exe\""
答案1
您首先想到的是使用&
将两个命令粘贴在一起,这是正确的方法。
使用此粘贴的命令并将其放在 cmd 上,如下所示:
Runas /savecred /user:chrome "cmd /c ""robocopy C:\Users\chrome\AppData\Local\Google\Chrome-Backup C:\Users\chrome\AppData\Local\Google\Chrome /mir & \"!ProgramFiles(x86)!\Google\Chrome\Application\chrome.exe\"""
这使您可以在一个 runas 语句中执行多个命令,而无需使用批处理文件。
答案2
据我所知,runas
只会接受一个命令。
不过,您可以通过将多个命令制作成批处理文件,然后使用runas
来执行批处理文件来解决此问题。如下所示:
REM This file is CopyChromeStuffAndRunIt.bat
robocopy "C:\Users\chrome\AppData\Local\Google\Chrome-Backup" "C:\Users\chrome\AppData\Local\Google\Chrome" /mir
"%ProgramFiles(x86)%\Google\Chrome\Application\chrome.exe\"
然后运行命令:
runas /savecred /user:chrome "c:\batFileLocation\CopyChromeStuffAndRunIt.bat"
或者,您可以将命令放在另一个单独的批处理文件中,而不是从命令行运行命令runas
,这样最终就会得到两个批处理文件。