如何在PowerShell中启动远程处理

Ser*_*vuc 7 powershell remoting start-process invoke-command

我有一个问题,我有一个脚本:

  • 与PSSession连接(我使用PSSession管理员帐户)
  • 停止2进程
  • 改变他们的文件
  • 启动2流程(此处出现问题)

我想在服务器上启动进程,所以我用PSSession连接(没问题)

我做Invoke-Command:

# $pathProg path to my program
Invoke-Command -session $mySession -command {Start-Process $($args[0])} -ArgumentList $pathProg
Run Code Online (Sandbox Code Playgroud)

但它什么都不做(我用VNC验证)

我也做Invoke-Command:

# $pathProg path to my program
Invoke-Command -session $mySession -command {&$($args[0])} -ArgumentList $pathProg
Run Code Online (Sandbox Code Playgroud)

这个程序很好(好)但我的脚本等待结束程序(不好)

有人有想法吗?

谢谢

CB.*_*CB. 12

您可以尝试使用WMI:

$command = "notepad.exe"
$process = [WMICLASS]"\\$CompName\ROOT\CIMV2:win32_process"
$result = $process.Create($command) 
Run Code Online (Sandbox Code Playgroud)

如果您需要传递凭据:

$cred = get-credential
$process = get-wmiobject -query "SELECT * FROM Meta_Class WHERE __Class = 'Win32_Process'" -namespace "root\cimv2" -computername $CompName -credential $cred
$results = $process.Create( "notepad.exe" )
Run Code Online (Sandbox Code Playgroud)