Программное обеспечение.

forfiles — одна из самых полезных команд в Windows

Александр » 01 дек 2018, 15:23

Команда "forfiles", имеющаяся в командной строке Windows, выполняет поиск файлов по маске и по дате модификации!
Команда "forfiles" в Windows является аналогом команды "find", имеющейся в Unix-семействе операционных систем.
Справочная страница по команде "forfiles" на сайте Microsoft: https://docs.microsoft.com/en-us/window ... s/forfiles.
Но, там не упомянуто почему-то, про то, что формат даты, используемый в команде "forfiles" зависит от локали. (Возможно это подразумевается по-умолчанию для всей командной оболочки).
Для получения более актуальной справки по команде "forfiles", советую посмотреть справочную информацию по этой команде у себя в системе. Для этого в командной строке нужно ввести:
Код: Выделить всё
/? forfiles

Например, в моей системе Windows 10, формат даты для команды forfiles в справке описан так:
/D <дата> Выбор файлов, у которых дата последнего изменения
больше или равна (+) либо меньше или равна
(-) указанной дате при использовании формата
"dd.MM.yyyy"; либо файлов, у которых дата последнего
изменения больше или равна (+)
текущей дате плюс "dd" дней либо меньше или
равна (-) текущей дате минус "dd" дней.
Допустимым числом дней "dd" является любое
число в диапазоне 0 - 32768.
"+" используется по умолчанию, если знак не указан.

Т.е. вместо прямых слэшей нужно использовать точки, а дата идет перед месяцем.
Например 20 сентября 2018 года нужно указывать как "20.09.2018", а не "09/20/2018"!
Вывод списка файлов, изменённых после указанной даты с полным путём:
Код: Выделить всё
forfiles /S /D +20.09.2018 /C "cmd /c echo @PATH/@FILE"
Александр
 
Сообщения: 397
Зарегистрирован: 20 мар 2014, 17:05

Вернуться в Софт