If-Koubou

Kako izbrisati datoteke starije od X dana u sustavu Windows

Kako izbrisati datoteke starije od X dana u sustavu Windows (Kako da)

Već smo vam pokazali koliko je fleksibilna Linux ljuska, no to ne znači da je Windows dalje iza. Evo dvije tehnike koje možete koristiti ovisno o preferenciji ljuske, cmd ili PowerShell.

PowerShell 3

Get-ChildItem -Path "C: \ Sigurnosna kopija" -Recurse | Gdje-vrijeme stvaranja objekta -lt (Get-Date) .AddDays (-5) | Uklanjanje stavke za

PowerShell 2

Get-ChildItem -Path "C: \ Sigurnosna kopija" -Recurse | Gdje-Objekt $ _. CreationTime -lt (Get-Date) .AddDays (-5) | Uklanjanje stavke za

Obrazloženje

  • Prvo dobili smo datoteke FileInfo i DirectoryInfo u Path C: \ Backups.
  • FileInfo i DirectoryInfo objekti sadrže i stvaranje CreationTime, tako da možemo filtrirati zbirku pomoću toga.
  • -Lt (manje od) operatora se zatim koristi za usporedbu CreationTime svojstva objekata s Get-Date (trenutni datum) oduzimaju 5 dana.
  • To nam onda ostavlja zbirku objekata koji su stvoreni prije više od 5 dana, a mi prelazimo u Remove-Item.

Pro Savjet

Da biste vidjeli što će biti uklonjeno, možete upotrijebiti parametar -WhatIf:

Get-ChildItem -Path "C: \ Sigurnosna kopija" -Recurse | Gdje-vrijeme stvaranja objekta -lt (Get-Date) .AddDays (-5) | Ukloni stavku - Što ako?

Naredbeni redak

Iako vam preporučujemo da koristite jedan od PowerShell metoda, a da pritom nećete ući u bilo koju od grubih detalja, možete to učiniti i iz naredbenog retka.

forfiles -p "C: \ sigurnosna kopija" -s -m *. * -d -5 -c "cmd / c delta"

Pro Savjet

Da biste vidjeli koje će se datoteke izbrisati, možete koristiti eho.

forfiles -p "C: \ Sigurnosne kopije" -s -m *. * -d -5-c "cmd / c echo @file"