דף הבית » איך ל » כיצד למחוק קבצים ישן יותר מ X ימים ב - Windows

    כיצד למחוק קבצים ישן יותר מ X ימים ב - Windows

    כבר הראינו לך כמה גמיש את מעטפת לינוקס יכול להיות, אבל זה לא אומר Windows הוא כל עוד מאחור. הנה שתי טכניקות שבהן ניתן להשתמש בהתאם להעדפות הפגזים, cmd או PowerShell.

    PowerShell 3

    Get-ChildItem נתיב "C: \ גיבויים" -Recurse | איפה-אובייקט CreationTime -lt (Get-Date) .AddDays (-5) | הסר פריט

    PowerShell 2

    Get-ChildItem נתיב "C: \ גיבויים" -Recurse | איפה - אובייקט $ _. CreationTime -lt (Get-Date). ADDDays (-5) | הסר פריט

    הסבר

    • ראשית אנו מקבלים אובייקטים FileInfo ו- DirectoryInfo בנתיב C: \ Backup.
    • אובייקטים FileInfo ו DirectoryInfo שניהם מכילים מאפיין CreationTime, כך שנוכל לסנן את האוסף באמצעות זה.
    • מפעיל -lt (פחות מ) משמש לאחר מכן להשוואת המאפיין CreationTime של האובייקטים עם Get-Date (התאריך הנוכחי) מחסר 5 ימים.
    • זה משאיר אותנו עם אוסף של אובייקטים שנוצרו לפני יותר מ 5 ימים, אשר אנו עוברים כדי להסיר פריט.

    טיפ Pro

    כדי לראות מה יוסר, תוכל להשתמש בפרמטר -WhatIf:

    Get-ChildItem נתיב "C: \ גיבויים" -Recurse | איפה-אובייקט CreationTime -lt (Get-Date) .AddDays (-5) | Remove-Item -WhatIf

    שורת הפקודה

    אמנם אנו ממליצים להשתמש באחת השיטות PowerShell, מבלי להיכנס לכל הפרטים המחוספסים אתה יכול גם לעשות את זה מתוך שורת הפקודה.

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

    טיפ Pro

    כדי לראות מה הקבצים הולכים להיות נמחק אתה יכול להשתמש הד.

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