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
}
あなたはここでは2つの別々の質問があります。あなたはそれらの1つを選んでそれに焦点を当てるべきです。誰かが答える方法を知っているかもしれませんが、どちらにも答えたくないかもしれません。質問は単一で明確に定義されるべきです。 – Matt
申し訳ありません - アドバイスいただきありがとうございます - 私はそれを修正します。 –
質問のコードを更新しないでください。それは読者がそれが何が起こっているかを理解することが難しくなります。 – Matt