2

Я надеюсь, что это можно сделать с помощью некоторых трюков PowerShell.

У меня на рабочем компьютере есть каталог (Windows XP), содержащий тонны PDF-файлов, некоторые из которых я аннотировал и сохранил. Я хотел бы иметь возможность идентифицировать те, которые я аннотировал, используя следующую простую эвристику: найти файлы, в которых дата модификации более поздняя, чем дата создания. Я не просто хочу сортировать по дате изменения, потому что многие аннотированные, но недавно добавленные PDF-файлы будут загромождать список.

Кроме того, иногда сразу после сохранения я делаю быстрое редактирование файла, который касается даты его изменения, но не осмысленно. Таким образом, если бы я мог идентифицировать только те файлы, в которых дата изменения более чем на 1 день позже даты создания, я бы установил. Любые идеи для команды, чтобы использовать, и я должен делать это в powershell?

2 ответа2

3

Вы захотите сделать некоторое форматирование вашего вывода, но попробуйте это:

Get-ChildItem F:\Temp\* -recurse -include *.pdf | ForEach-Object { If (($_.LastWritetime - $_.CreationTime).Days -gt 1) { Write-Host $_.Name } }

Замените "F:\Temp\" вашим собственным путем.

1

Попробуйте что-то вроде этого:

ls C:\Path | ?{($_.LastWriteTime - $_.CreationTime).Days -gt 1} |
Select Name,CreationTime,LastWriteTime | Export-CSV .\Annotated.csv

Это предоставит список файлов, где время последней записи минус время создания больше одного дня (что-либо изменено после дня), и экспортирует его в CSV-файл в рабочем каталоге.

Вы можете добавить -recursive и -include *.pdf для рекурсии и фильтрации PDF соответственно.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .