Powershell find files in time range

Dear expert

Below code is wrong, I need to know why, I just want to search a text inside a file with time range yesterday... Well problem is files are not .log, they are different format like: log20180101.log.2001 returns empty result. And im not sure if I did this: $_.LastWriteTime right too.

$time = (Get-Date).AddDays(-1)
$Pattern = 'error'
$Path = 'd:\logs'
Get-ChildItem -Path $Path *.* -Recurse | Select-String -Pattern $Pattern | where-Object {$_.LastWriteTime -gt $time} | select-object Fullname
Who is Participating?
Hasin Ahmed ChoudharyExchange AdministratorCommented:
Get-ChildItem -Path $Path *.* -Recurse | Select-String -Pattern $Pattern | where-Object {$_.LastWriteTime -gt $time}

Above is like you are searching the all files under DIr path and search the string.

If you want to search the files only accessed after given time (since yesterday in your case), just change the sequence of the filter.

Get-ChildItem -Path $Path *.* -Recurse | where-Object {$_.LastWriteTime -gt $time} |Select-String -Pattern $Pattern
WeTiAuthor Commented:
works, thx
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.