This script will search directory and file contents with Powershell
$HowManyDays = 7
$FileAge = (Get-Date).AddDays(-$HowManyDays)
$FindThis = "test"
$WhatFiles = "*.log"
$SearchWhere = ".\"
$MsgOut = 'Searching for "{0}" in {1} (files) starting in {2} for the past {3} days' -f $FindThis, $WhatFiles, $SearchWhere, $HowManyDays
#-----------------------------------------------------------[Execution]------------------------------------------------------------
Write-Host $MsgOut # '+$WhatFiles +' starting in '+$SarchWhere
$fileList = Get-ChildItem -Path $SearchWhere -Recurse -Force -ErrorAction SilentlyContinue -Include $WhatFiles |Where-Object {$_.LastWriteTime -gt $FileAge}
# This for each loop code "% {$i++;"$($i-1) `t $_"}" adds the line numbers to the output. Ref: https://superuser.com/questions/1182291/how-do-i-get-line-numbers-with-powershell/1272052#1272052
ForEach ($file in $filelist) { $i=1
"Searching File ...:: "+$file.FullName
Get-Content $file.FullName -Force -ErrorAction SilentlyContinue | % {$i++;"$($i-1) `t $_"}| Select-String -pattern $FindThis}