Есть ли способ определить файлы, к которым не было доступа в течение последнего [вставьте временные рамки здесь] (для меня это в течение последнего года) через общий ресурс Windows?
У меня есть доступ к серверу, и файлы доступны только через общий ресурс Windows, а не с самого сервера.
На общей папке содержится 70 ГБ данных (NTFS). В нем сотни тысяч файлов, разложенных по сотням папок. Смесь файлов, связанных с MS Office, больших изображений, программ и многого другого.
Я в первую очередь программист и доволен ответом «сделай сам, сделав это» ... но мне бы хотелось, чтобы в Windows был механизм (SBS Server 2003), инструмент с открытым исходным кодом или недорогой коммерческий продукт. .
Очевидно, я очень хочу, чтобы этот инструмент помог мне как-то с этим справиться. Наличие списка для ручной работы с файлами - не желаемый конечный результат, но определенно хорошее начало.
PowerShell:
$Cutoffdate = (Get-date).AddDays(-365)
Get-Childitem –recurse \\server\share\folder | where-object {$_.LastAccessTime –gt $Cutoffdate}
И если вы хотите сделать что-то вроде их перемещения:
$Cutoffdate = (Get-date).AddDays(-365)
$Destdirectory = '\\server\share\oldfiles'
Get-Childitem –recurse \\server\share\folder | where-object {$_.LastAccessTime –gt $Cutoffdate} | foreach {$_.MoveTo($Destdirectory)}
Я должен вас предупредить, что это не идеальный процесс. Windows не очень хорошо отслеживает время доступа, и вы, вероятно, пропустите довольно много файлов, к которым на самом деле не было доступа долгое время, но кто-то просматривал каталог, в котором они находятся (что иногда обновляет иногда, иногда нет).