Bu depo, Windows PowerShell kullanarak bir klasörün ve içerisindeki tüm alt klasör ve dosyaların “oluşturma” ve “değiştirilme” tarihlerini güncellemek için iki farklı script içerir:
random_date.ps1
Belirlenen tarih aralığında, iş saatleri (09:00–17:59) içinde rastgele tarih atar.change_date.ps1
Kullanıcının girdiği tek bir tarihe göre tüm öğelerin oluşturma ve değiştirme tarihlerini ayarlar.
- Önkoşullar
- Dosya Açıklamaları
- Kurulum ve Çalıştırma
- Örnek Kullanım
- Tek Satırda Kullanım Örneği
- Dikkat Edilmesi Gerekenler
- Lisans
- Windows 10 veya daha yeni bir işletim sistemi
- PowerShell (v5 veya üzeri tercih edilir)
- Yönetici (Administrator) yetkisiyle PowerShell açma izni
- Depoya erişim (örn. Git ile clonelama yetkisi)
Bu script, kullanıcıdan bir klasör yolu alır ve:
- Oluşturma tarihi için:
- 30 Nisan 2025 00:00:00 – 15 Mayıs 2025 23:59:59 aralığında
- Saat, iş saati (09:00–17:59) içinde rastgele seçilir
- Değiştirilme tarihi için:
- 30 Nisan 2025 00:00:00 – 28 Mayıs 2025 23:59:59 aralığında
- Saat, iş saati (09:00–17:59) içinde rastgele seçilir
Klasörün kendisi ile içindeki tüm alt klasör ve dosyaların (iç içe tüm yapılar dâhil) hem “CreationTime” hem de “LastWriteTime”/“LastAccessTime” değerleri bu rastgele seçilen tarih ve saatlere göre güncellenir.
Önemli: Tarih aralıkları ve iş saati (09–17) dilimleri, script’in içinde kolayca düzenlenebilir.
Bu script, kullanıcıdan:
- Bir klasör yolu
- Yeni tarih bilgisi (
gg.aa.yyyy SS:dd:ssformatında, örn.01.01.2024 10:00:00)
alır ve:
- Girilen tarih değerini “CreationTime”, “LastWriteTime” ve “LastAccessTime” olarak
- Klasörün kendisine
- Klasör içindeki tüm dosyalara
uygular. Alt klasörler de Get-ChildItem -File ile işleme dâhil edilir (klasörler dışındaki tüm dosyalar).
Aşağıdaki adımları takip ederek script’leri kendi bilgisayarınızda çalıştırabilirsiniz.
git clone https://github.com/mevlutcelik/windows-timefixer.git
cd windows-timefixerWindows PowerShell’i Yönetici (Administrator) olarak açın. Aşağıdaki komutla çalıştırma ilkelerini (execution policy) geçici olarak devre dışı bırakabilirsiniz:
Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass -ForceBu ayar yalnızca açık oturum boyunca geçerli olur ve bilgisayarınızın genel güvenlik ayarlarına kalıcı bir değişiklik getirmenize gerek kalmaz.
-
PowerShell penceresinde repo klasörüne gidin:
cd "C:\Yol\folder-timestamp-changer" -
Aşağıdaki komutu çalıştırın:
.\random_date.ps1
-
Ekranda görünecek “Enter PATH” satırına, tarihlerini rastgele ayarlamak istediğiniz klasörün tam yolunu yazın. Örneğin:
Enter PATH: C:\Users\mevlutcelik\Desktop\deneme_klasoru -
Script, klasör ve içerisindeki her bir alt klasör/dosya için oluşturma ve değiştirme tarihlerini rastgele atayacak ve başarılı olunca “Tüm klasör ve dosyalar için rastgele tarih atamaları tamamlandı.” mesajını verecektir.
-
PowerShell penceresinde repo klasörüne gidin:
cd "C:\Yol\folder-timestamp-changer" -
Aşağıdaki komutu çalıştırın:
.\change_date.ps1
-
İlk satırda, “Enter PATH” ile klasör yolunu girin:
Enter PATH: C:\Users\mevlutcelik\Desktop\deneme_klasoru -
İkinci soruda, yeni tarihi
gg.aa.yyyy SS:dd:ssformatında girin. Örneğin:Enter the new date (example: 01.01.2024 10:00:00): 05.05.2025 14:30:00 -
Script, klasör ve içindeki tüm dosyalar için belirtilen tarihi hem “CreationTime” hem de “LastWriteTime”/“LastAccessTime” olarak ayarlayacak ve ardından “The folder and all contained files have been successfully updated.” mesajını gösterecektir.
1. random_date.ps1 Örneği
- Klasör:
C:\Users\mevlutcelik\Desktop\deneme_klasoru
PS C:\Users\mevlutcelik\Desktop\windows-timefixer> .\random_date.ps1
Enter PATH: C:\Users\mevlutcelik\Desktop\deneme_klasoru
Tüm klasör ve dosyalar için rastgele tarih atamaları tamamlandı.Script, örneğin şu şekilde rastgele değerler atayabilir:
deneme_klasoruklasörünün CreationTime: 03.05.2025 11:17:42deneme_klasoru\alt_klasor\file.txtdosyasının CreationTime: 08.05.2025 09:03:58, LastWriteTime: 27.05.2025 15:45:22
vb.
2. change_date.ps1 Örneği
- Klasör:
C:\Users\mevlutcelik\Desktop\deneme_klasoru - Yeni Tarih:
05.05.2025 14:30:00
PS C:\Users\mevlutcelik\Desktop\windows-timefixer> .\change_date.ps1
Enter PATH: C:\Users\mevlutcelik\Desktop\deneme_klasoru
Enter the new date (example: 01.01.2024 10:00:00): 05.05.2025 14:30:00
The folder and all contained files have been successfully updated.Bu çalıştırma sonunda:
deneme_klasoruklasörünün hem CreationTime hem de LastWriteTime = 05.05.2025 14:30:00- İçerisindeki tüm dosyaların CreationTime/LastWriteTime/LastAccessTime = 05.05.2025 14:30:00
şeklinde güncellenir.
cd "C:\Users\mevlutcelik\Desktop\windows-timefixer"; Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass -Force; .\random_date.ps1- Yönetici İzni: Bu script’ler klasör ve dosya zaman bilgilerini değiştirdiğinden, PowerShell’in yönetici (Administrator) olarak çalıştırılması gerekebilir.
- Tarihler: Tarih formatlarının doğru girilmesi önemlidir. Yanlış format girildiğinde hata mesajı alırsınız.
- Performans: Çok büyük klasör yapılarında (
-Recurse) çalıştırmak bir süre alabilir. O esnada PowerShell penceresini kapatmayın. - Tarih Aralıkları:
random_date.ps1içindeki tarih aralıklarını ve iş saati dilimlerini (09–17) dilediğiniz gibi ayarlayabilirsiniz. - Execution Policy: Her PowerShell oturumunda
Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass -Forcekomutunu unutmamanız gerekir; aksi takdirde script çalışmayabilir.
Bu projedeki kodlar MIT Lisansı ile lisanslanmıştır. Dilediğiniz gibi kullanabilir, değiştirebilir ve dağıtabilirsiniz.