想法是使用Select-String和Invoke-Command在多個服務器上搜索模式。如何使用Powershell遠程選擇幾個服務器
我無法正確地將$結果返回到本地服務器,並將其打印到文件和/或控制檯中(這並不重要)。
我需要的是能夠看到的搜索結果(文件名,行,匹配)
Set Execution-Policy RemoteSigned
$servidores = Get-Content "C:\ServerList.txt"
(Get-Date).ToString()
Write-Output "----------------Running script------------------"
Write-Output "---------------Servers in scope :---------------"
Write-Output $servidores
Write-Output "-----------------Starting Loop-----------------"
$ToExecute = {
Select-String -SimpleMatch "password" -Path C:\*.* -Exclude C:\Users\Public\resultados.txt
}
foreach ($server in $servidores){
$result = Invoke-Command -ComputerName $server -ScriptBlock $ToExecute
Write-Output "----------Executing Search on Server:-----------"
(Get-Date).ToString();$server;
Write-Output "------------------------------------------------"
Write-Output $result
Out-File $result C:\Users\Public\resultados.txt
}
你有兩個不同的問題在這裏。你應該選擇其中一個並關注它。有人可能會知道如何回答,但可能不願回答。問題應該單一併明確界定。 – Matt
好 - 謝謝你的建議 - 我會改正它。 –
請不要更新問題中的代碼。這會讓讀者更難理解發生了什麼。 – Matt