【问题标题】:Powershell remote script execution issuePowershell远程脚本执行问题
【发布时间】:2012-09-12 15:32:20
【问题描述】:

我正在尝试从主机 1.2.3.3 远程执行盒子 1.2.3.4 上的 powershell 脚本

$cred = get-credential 
$process = get-wmiobject -query "SELECT * FROM Meta_Class WHERE __Class = 'Win32_Process'" -namespace "root\cimv2" -computername 1.2.3.4 -credential $cred 
$results = $process.Create("powershell.exe /c C:\Windows\temp\hello.ps1 arg1") 

我可以看到进程正在创建(返回值为 0),但该进程在远程系统中立即终止(1.2.3.4)

我也尝试了 powershell.exe -file 选项而不是 powershell.exe /c

我尝试使用 Invoke-Command,但由于受信任的主机问题,该方法有效。 有人能解释一下吗?

【问题讨论】:

    标签: powershell powershell-remoting


    【解决方案1】:

    PowerShell.exe 参数以破折号开头(例如“-”),完整帮助类型:PowerShell.exe /?。

    你期望会发生什么?脚本在做什么?它应该这样“死”吗?

    【讨论】:

    • 我试图安装一个可执行文件。在 powershell 脚本中,我将从共享位置访问 exe 并安装它。我也尝试了 -file 选项而不是 /c 也没有工作
    • 你得到的退出码是新建进程的退出码,不是安装进程的退出码
    • 我指的是打印变量 $results 时的退出代码 __GENUS : 2 __CLASS : __PARAMETERS __SUPERCLASS : __DYNASTY : __PARAMETERS __RELPATH : __PROPERTY_COUNT : 2 __DERIVATION : {} __SERVER : __NAMESPACE : __PATH : ProcessId : 6336返回值:0
    • 没错,你得到的是创建成功的返回值,而不是PowerShell进程的退出码。
    猜你喜欢
    • 1970-01-01
    • 2022-10-12
    • 2020-11-12
    • 1970-01-01
    • 2012-05-30
    • 1970-01-01
    • 2013-10-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多