Партиден скрипт за изтриване на файл, по-стар от 30 дни
![](http://img.brin-designs.com/img/games/816/batch-script-delete-file-older-than-30-days.png)
- Проблем
- Решение
- Забележка
Проблем
Бих искал да създам базов скрипт, който може да копира файлове, които са по-стари от 30 дни от една папка в друга. Искам също така да изтрия 30-дневните файлове от изходната папка след копиране в целевата папка.
Решение
Следният скрипт на Windows ще премества файлове, по-стари от дадена дата от C: folder1 до C: folder2. По-възрастни, предполагам, че те не са променени след определена дата.
Датата се предава във формат yyyymmdd. Когато файловете бъдат преместени в папка2, те автоматично се изтриват от папка1.
# Script movefiles.txt # Входен аргумент - дата var str date # Получаване на списък с файлове, които не са модифицирани от $ date. var str list; lf -n "*" "C: folder1" (($ ftype == "f") AND ($ fmtime $ list # Преместване на файловете едно по едно. $ list> $ файловата система премества $ file "C: folder2"
Сценарият е в бисерпинг. Изтеглете biterscripting от //www.biterscripting.com.
- Запазете скрипта като C: Scriptsmovefiles.txt.
- Започнете да пишете по-горе.
- Извикайте скрипта като:
дата на скрипта на movefiles.txt (днешната дата)
Горното ще премества файлове, които не са били променяни от 30 дни преди днес.
Забележка
Благодарение на SenHu за този съвет на форума.