This small script will crawl your farm and spit out a .CSV file with of all items that are more than a year old. It was quickly written due to an "i wonder ..." request.
# Title: Get-SPOldDocuments # Version: 1.0 01MAR12 # Author: James Sanders # Purpose: Find and display all documents that are at least one year old # Load SharePoint PowerShell extensions "- Loading SharePoint extensions" Add-PSSnapin Microsoft.SharePoint.PowerShell -ErrorAction SilentlyContinue # Set date query $dateQuery = (Get-Date).AddYears(-1) "Item, TimeStamp, Length" | out-file OldDocuments.csv # Crawl web applications "- Enumerating web sites" $webs = Get-SPWebApplication | Get-SPSite -Limit All | Get-SPWeb -Limit All "- Enumerating lists" ForEach ($web in $webs) { ForEach ($list in $web.Lists) { If ($list.BaseType -eq "DocumentLibrary") { "`n- Checking Document Library: $($web.Url)/$list" ForEach ($item in $list.Items) { If ($item.URL.StartsWith("_")) {Break} If ($item.URL.EndsWith(".aspx")) {Break} If ($item.File.TimeLastModified -le $dateQuery) { $result = """$($web.URL)/$($item.URL)"", $($item.File.TimeLastModified), $($item.File.Length)" $result $result | Out-File OldDocuments.csv -Append } } } } }