Windows 10'da Storage sense, depolama alanınız azaldığında otomatik olarak yer boşaltmak için kullanılan bir özelliktir. Bu özellik, gereksiz sistem dosyalarını, bir aydan uzun süredir geri dönüşüm kutusunda veya İndirilenler klasöründe bulunan dosyaları silerek ve bir süredir kullandığınız OneDrive içeriğini yalnızca çevrimiçi hale getirerek çalışır .
Bu özellik depolama alanını kontrol etmeye yardımcı olsa da sınırlıdır ve son bir ayda değişmeyen dosyaları izlemek ve silmek için manuel olarak farklı konumlar ekleme seçeneği sunmaz. Önemli olmayan dosyaları farklı bir konumda saklarsanız, belirtilen günden daha eski herhangi bir klasördeki dosyaları izlemek ve temizlemek için PowerShell ve Görev Zamanlayıcı'yı kullanmak mümkündür.
Bu kılavuzda , geçen ay veya Windows 10'da belirttiğiniz herhangi bir sayıda gün içinde değiştirilmemiş dosyaları otomatik olarak silme adımlarını öğreneceksiniz . (Bu adımlar Windows 11'de de çalışmalıdır .)
Önemli: Yanlış komutu yazmak yanlış dosyaların silinmesine neden olabileceğinden, komutu geçici bir klasör kullanarak test etmeniz önerilir.
PowerShell kullanarak Windows 10'da X günden eski dosyaları silin
Çok sayıda dosya içeren farklı klasörleriniz varsa ve belirli günlerden daha eski olanları silerek temizlemek istiyorsanız, aşağıdaki adımları kullanabilirsiniz:
-
Windows 10'da Başlat'ı açın .
-
Windows PowerShell'i arayın , sonuca sağ tıklayın ve Yönetici olarak çalıştır seçeneğini seçin.
-
Son 30 gün içinde değiştirilmemiş dosyaları silmek için aşağıdaki komutu yazın ve Enter tuşuna basın :
Get-ChildItem –Yol "C:\path\to\klasör" -Recurse | Where-Object {($_.LastWriteTime -lt (Get-Date).AddDays(-30))} | Öğeyi kaldırmak
Yolu değiştirin: "C:\path\to\folder"klasör konumuyla, -30yukarıdaki komutta dosyaları silmek ve son değiştirilme tarihi olan dosyaları seçmek için değiştirmek istiyorsunuz.

Windows 10'da Görev Zamanlayıcı'yı kullanarak X günden daha eski dosyaları otomatik olarak silin
Önceki talimatlardaki komut, 30 günden eski bir klasördeki dosyaları silmenize izin verir, ancak her yer boşaltmak istediğinizde PowerShell'i açmanız ve komutu manuel olarak çalıştırmanız gerekir.
Not Defteri'ni kullanarak PowerShell betiği oluşturun
Görev Zamanlayıcı'yı kullanarak bir görevi çalıştırmak için aşağıdaki adımlarla bir PowerShell betiği oluşturmanız gerekir:
-
Başlat'ı açın .
-
Not Defteri'ni arayın ve deneyimi açmak için en üstteki sonuca tıklayın.
-
Aşağıdaki komutu bir Not Defteri metin dosyasına kopyalayıp yapıştırın:
Get-ChildItem –Yol "C:\path\to\klasör" -Recurse | Where-Object {($_.LastWriteTime -lt (Get-Date).AddDays(-30))} | Öğeyi kaldırmak
Bu yolu değiştirin: "C:\path\to\folder"klasör konumuyla, -30yukarıdaki komutta dosyaları silmek ve son değiştirilme tarihine sahip dosyaları seçmek için değiştirmek istiyorsunuz.
-
Dosya menüsünü tıklayın .
-
Farklı kaydet seçeneğini seçin .
-
Cleanup.ps1 adını ve uzantısını kullanarak dosyayı kaydedin .
Görev Zamanlayıcı'yı kullanarak görev oluşturun
İşlemi otomatikleştirmek istiyorsanız, belirtilen aralıklarla komutu yürüten bir görev oluşturmak için Görev Zamanlayıcı'yı kullanmanız gerekir.
-
Başlat'ı açın .
-
Görev Zamanlayıcı'yı arayın ve sonucu tıklayın.
-
Görev Zamanlayıcı Kitaplığı klasörüne sağ tıklayın .
-
Yeni Klasör seçeneğini tıklayın .
-
Klasör için herhangi bir ad yazın ve Tamam'ı tıklayın . (Görevleri düzenli ve sistem görevlerinden ayrı tutmak için yeni bir klasör oluşturuyoruz.)
-
En son oluşturulan klasöre sağ tıklayın ve Görev Oluştur seçeneğini seçin.
-
"Ad" kutusuna görev için bir ad girin.
-
“Genel” sekmesinin altında, “Güvenlik seçenekleri” bölümünün altında, “Güvenlik seçenekleri” bölümünün altında “ Kullanıcı oturum açmış olsa da olmasa da çalıştır” seçeneğini seçin. (Bu seçenek, görev otomatik olarak çalıştığında komut penceresinin görünmemesini sağlar.)
![How to delete files older than X days automatically using PowerShell How to delete files older than X days automatically using PowerShell]()
-
Parolayı saklama seçeneğinin işaretini kaldırın.
-
"Tetikleyiciler" sekmesine tıklayın.
-
Yeni düğmesini tıklayın .
-
"Görevi başlat" açılır menüsünü kullanarak Bir programa göre öğesini seçin .
-
"Ayarlar" altında, görevin ne zaman çalışmasını istediğinizi belirtin (örneğin, Zamanında, Günlük, Haftalık, Aylık). Hangi seçeneği seçerseniz seçin, sağ tarafta Başlat ayarlarını belirttiğinizden emin olun .
-
Tamam düğmesini tıklayın .
![How to delete files older than X days automatically using PowerShell How to delete files older than X days automatically using PowerShell]()
-
Eylemler sekmesini tıklayın .
-
Yeni Düğmesine tıklayın .
-
“Eylemler” açılır menüsünü kullanarak Bir program başlat seçeneğini seçin .
-
“Program/script” alanına aşağıdaki komutu yazın:
powershell.exe
-
“Argüman ekle” alanına aşağıdaki komutu yazın ve Tamam düğmesini tıklayın.
-ExecutionPolicy Bypass C:\path\to\cleanup.ps1
Yolu değiştirin: "C:\path\to\cleanup.ps1"komuttaki dosyaları silmek için daha önce oluşturduğunuz PowerShell komut dosyası konumuyla.
![How to delete files older than X days automatically using PowerShell How to delete files older than X days automatically using PowerShell]()
-
Ayarlar sekmesini tıklayın .
-
Aşağıdaki seçenekleri kontrol edin:
- Görevin isteğe bağlı olarak çalıştırılmasına izin verin.
- Zamanlanmış bir başlangıç kaçırıldıktan sonra görevi mümkün olan en kısa sürede çalıştırın.
- Görev başarısız olursa, her şeyi yeniden başlatın.
-
Tamam düğmesini tıklayın .
-
Yönetici kullanıcı adınızı ve parolanızı (varsa) yazın.
-
Tamam düğmesini tıklayın .
Adımları tamamladığınızda, PowerShell betiği, belirttiğiniz gün sayısından daha eski dosyaları silerek zamanlamaya göre çalışır. Adı değiştirmemeyi veya klasörü başka bir konuma taşımamayı unutmayın. Aksi takdirde, görev başarısız olacaktır.