通过runas.exe执行PowerShell命令遇转义问题求助
使用runas.exe执行PowerShell命令的转义解决方案
原命令的问题在于三层命令行(runas → cmd → powershell)的引号嵌套与特殊字符解析冲突,以下是两种可行的修正方案:
方案一:使用CMD转义符处理特殊字符
利用CMD的转义符^将&标记为普通字符,避免被CMD提前解析:
runas.exe /savecred /user:user "cmd.exe /k powershell -Command ^& {echo 123}"
方案二:用单引号包裹PowerShell命令块
通过单引号隔离PowerShell命令,让CMD不会解析内部的特殊字符,直接完整传递给PowerShell:
runas.exe /savecred /user:user "cmd.exe /k powershell -Command '& {echo 123}'"
额外优化
如果不需要执行后保留CMD窗口,可将/k替换为/c,命令执行完成后自动关闭窗口:
runas.exe /savecred /user:user "cmd.exe /c powershell -Command '& {echo 123}'"
内容的提问来源于stack exchange,提问作者MegaBomber
相关产品推荐
相关产品推荐

