If-Koubou

Cara Menghapus File Lebih Lama dari X Days di Windows

Cara Menghapus File Lebih Lama dari X Days di Windows (Bagaimana caranya)

Kami telah menunjukkan kepada Anda bagaimana fleksibelnya shell Linux, tetapi itu tidak berarti Windows jauh di belakang. Berikut dua teknik yang dapat Anda gunakan tergantung pada preferensi shell Anda, cmd atau PowerShell.

PowerShell 3

Dapatkan-ChildItem -Path "C: \ Backups" -Recurse | Di mana-Objek CreationTime -lt (Get-Date) .AddDays (-5) | Hapus-Item

PowerShell 2

Dapatkan-ChildItem -Path "C: \ Backups" -Recurse | Where-Object $ _. CreationTime -lt (Get-Date) .AddDays (-5) | Hapus-Item

Penjelasan

  • Pertama-tama kita mendapatkan objek FileInfo dan DirectoryInfo di Path C: \ Backups.
  • Objek FileInfo dan DirectoryInfo keduanya berisi properti CreationTime, jadi kita bisa memfilter koleksi menggunakan itu.
  • Operator -t (kurang dari) kemudian digunakan untuk membandingkan properti CreationTime objek dengan Get-Date (tanggal saat ini) dikurangi 5 hari.
  • Ini kemudian meninggalkan kita dengan kumpulan objek yang dibuat lebih dari 5 hari yang lalu, yang kami lewati ke Remove-Item.

Kiat Pro

Untuk melihat apa yang akan dihapus Anda dapat menggunakan parameter -ApaIf:

Dapatkan-ChildItem -Path "C: \ Backups" -Recurse | Di mana-Objek CreationTime -lt (Get-Date) .AddDays (-5) | Hapus-Item-Apa

Command Prompt

Meskipun kami menyarankan Anda menggunakan salah satu metode PowerShell, tanpa masuk ke salah satu detail yang mengerikan Anda juga dapat melakukannya dari command prompt.

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

Kiat Pro

Untuk melihat file apa yang akan dihapus, Anda dapat menggunakan echo.

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