Correctly Filtering DateTime

by Feb 18, 2014

When you use Where-Object to filter information by date or time, this works actually very well–provided you use the correct filtering format. Do not use the format found in the results.

To specify a date and or time, always use the culture-neutral management format:

"year-month-day hour:minute:second", so May 14, 2014 at 12:30 would read like this: "2014-05-14 12:30:00".

Or to put it differently: when you output results, PowerShell formats dates and times according to your control panel settings. When you input information (for example, filter criteria), PowerShell always expects a generic date and time format. Which makes sense: scripts should run in any culture the same. Results should be formatted in the culture of the person that needs to read them.

So to find all files in your Windows folder that have not changed since April 30, 2012, try this:

Twitter This Tip! ReTweet this Tip!