Как удалить файлы старше X дней в Windows

Оглавление:

Как удалить файлы старше X дней в Windows
Как удалить файлы старше X дней в Windows

Видео: Как удалить файлы старше X дней в Windows

Видео: Как удалить файлы старше X дней в Windows
Видео: 👉 CLR_CMOS / ПРАВИЛЬНЫЙ СБРОС НАСТРОЕК BIOS | RESETTING THE BIOS SETTINGS - YouTube 2024, Апрель
Anonim
Мы уже показали вам, насколько гибкой может быть оболочка Linux, но это не значит, что Windows отстает. Вот два метода, которые вы можете использовать в зависимости от предпочтений оболочки, cmd или PowerShell.
Мы уже показали вам, насколько гибкой может быть оболочка Linux, но это не значит, что Windows отстает. Вот два метода, которые вы можете использовать в зависимости от предпочтений оболочки, cmd или PowerShell.

PowerShell 3

Get-ChildItem –Path “C:Backups” –Recurse | Where-Object CreationTime –lt (Get-Date).AddDays(-5) | Remove-Item

PowerShell 2

Get-ChildItem –Path “C:Backups” –Recurse | Where-Object{$_.CreationTime –lt (Get-Date).AddDays(-5)} | Remove-Item

объяснение

  • Сначала мы получаем объекты FileInfo и DirectoryInfo в пути C: Backups.
  • Объекты FileInfo и DirectoryInfo содержат свойство CreationTime, поэтому мы можем фильтровать коллекцию, используя это.
  • Оператор -lt (меньше) затем используется для сравнения свойства CreationTime объектов с Get-Date (текущая дата) вычитает 5 дней.
  • Затем это оставляет нам коллекцию объектов, которые были созданы более 5 дней назад, и мы переходим к Remove-Item.

Pro Tip

Чтобы увидеть, что будет удалено, вы можете использовать параметр -WhatIf:

Get-ChildItem –Path “C:Backups” –Recurse | Where-Object CreationTime –lt (Get-Date).AddDays(-5) | Remove-Item –WhatIf

Image
Image

Командная строка

Хотя мы рекомендуем использовать один из методов PowerShell, не вдаваясь в какие-либо подробные данные, вы также можете сделать это из командной строки.

forfiles -p 'C:Backups' -s -m *.* -d -5 -c 'cmd /c del @path'

Pro Tip

Чтобы узнать, какие файлы будут удалены, вы можете использовать echo.

forfiles -p 'C:Backups' -s -m *.* -d -5 -c 'cmd /c echo @file'

Рекомендуемые: