我已经有过几次这样的迭代,但我似乎无法得到它给我输出甚至关闭循环。 我是新手,对于一个中级人来说可能很简单......但我在这里失去了理智。
这里是脚本
$i =124
$Ip = "166.112.76."
$Ip4th = $Ip + $i
echo $TASKLIST = Start "c:\windows\system32\tasklist.exe /s $ip4th /v /FI 'IMAGENAME eq
caffeine.exe' >>c:\caffeine\results.txt"
echo Do {{$TASKLIST; $i++}
echo While ($IP4th -le "166.112.76.128")}
AND HERE'S WHAT POWERSHELL GIVES BACK...NO OUTPUT FILE CREATED EITHER
PS C:\Users\jwalke22\Documents> C:\caffeine\caff4.ps1
=
Start
c:\windows\system32\tasklist.exe /s 166.112.76.124 /v /FI 'IMAGENAME eq caffeine.exe'
>>c:\caffeine\results.txt
Do
{$TASKLIST; $i++}
echo While ($IP4th -le "166.112.76.128")
答案 0 :(得分:1)
您似乎正在尝试获取远程计算机上正在运行的进程列表?如果是这样,你想要: Get-Process [[-Name]] [-ComputerName]
如:
for ($i = 0; $i -le 255; $i++) {
$server = "166.112.76.$i"
Get-Process -ComputerName $server
}
您会发现PowerShell直接开箱即可完成大量此类管理流程。您的预期解决方案失败,因为您没有“收到”您创建的任务列表窗口的输出。你可以通过几种方式实现这一目标,但它们都有点技术性。更容易熟悉PowerShell为您所做的事情。