Bir log dosyası içinde aranan kelime ya da kelimeleri Powershell komut satırından basit bir şekilde yapmak için Select-String komutu kullanılabilir.
PS C:\>Select-String -Path d:\Directory\logs\*.log -Pattern aranacak_string
Örnek: PS C:\>Select-String -Path c:\logfolder\*.log -Pattern facebook (Bulunduğunuz dizin içindeki .log uzantılı dosyaların içinde facebook kelimesini arar)
Örnek2: PS C:\>Select-String -Path c:\logfolder\*.log -Pattern facebook,wordpress
Örnek3: PS C:\>Select-String -Path c:\logfolder\firewall.log -Pattern youtube,facebook >> c:\temp\tarama.txt (firewall.log dosyasında youtube ve facebook geçen satırları c:\temp altında tarama.txt dosyasına yazdırır.)
Örnek script;
$searchWords = ‘aranacak’,’kelimeler’
Foreach ($sw in $searchWords)
{
Get-Childitem -Path “C:\logs” -Recurse -include “*.log” |
Select-String -Pattern “$sw” |
Select Path,LineNumber,@{n=’SearchWord’;e={$sw}}
}