通过 runas.exe 执行的 PowerShell 命令

问题描述 投票:0回答:1

我需要通过runas.exe执行PS命令。 PS 命令单独工作,但我无法使其作为 runas.exe 调用工作。似乎是一个转义问题,但引号 + 双引号由于某种原因在这里不起作用:(

原命令:

runas.exe /savecred /user:user "cmd.exe /k powershell -Command "& {echo 123}""

Thanks!
powershell escaping double-quotes
1个回答
0
投票
:: From cmd.exe
runas.exe /savecred /user:user "powershell -NoExit -Command \"^& { echo 123 }\""
  • 无需通过

    cmd /k
    调用 - 将
    -NoExit
    传递给
    powershell.exe
    直接保持会话打开。

  • 整体"内的

    embedded
    "..."
    必须escaped,因为
    \"

      因为它认为
    • cmd.exe
      outside
       
      runas.exe
      ,这将导致解释为 
      \"
       的语句排序运算符。转义 
      ""
       可以避免这种情况。
      
      
          
© www.soinside.com 2019 - 2024. All rights reserved.