Beranda » bagaimana » Cara Menghapus File yang Lebih Tua dari X Days di Windows

    Cara Menghapus File yang Lebih Tua dari X Days di Windows

    Kami telah menunjukkan kepada Anda seberapa fleksibel cangkang Linux, tetapi bukan berarti Windows lebih jauh ketinggalan. Berikut adalah dua teknik yang dapat Anda gunakan tergantung pada preferensi shell Anda, cmd atau PowerShell.

    PowerShell 3

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

    PowerShell 2

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

    Penjelasan

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

    Kiat Pro

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

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

    Prompt Perintah

    Meskipun kami sarankan Anda menggunakan salah satu metode PowerShell, tanpa masuk ke rincian kasar 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 gema.

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