我试图传递一个变量服务器名称以将其与 psexec 一起使用,所以我有一个变量 $hostname 并且我想做
psexec \\$hostname
当我这样做时,我得到一个错误。这样做的正确方法是什么?
我试图传递一个变量服务器名称以将其与 psexec 一起使用,所以我有一个变量 $hostname 并且我想做
psexec \\$hostname
当我这样做时,我得到一个错误。这样做的正确方法是什么?
你需要提供psexec
一些东西来运行,例如cmd
or powershell
。
你在设置 $hostname 变量吗?如果不是,那么您必须使用$env:COMPUTERNAME
Powershell 与标准 CMD 不同。
这在提升提示符下对我有用:
$myhost = 'localhost'
.\psexec.exe \\$myhost cmd /c dir
$
我在将变量传递到 psexec cmds 时遇到了类似的问题。您可以在您的情况下使用它:
$hostname = Read-Host 'Enter host name' | psexec \\\\\$_ cmd
或列表(和 Powershell 7 - 删除 5.1 或 6 的并行开关)
$hostname = Get-Content "...list.txt" | Foreach-Object -Parallel { psexec \\\\$_ cmd }