Пакетний скрипт для видалення файлу старше 30 днів
Shell Scripting - це потужний спосіб обробки файлів у Linux . Можна написати спеціальні сценарії Shell, які можна використовувати для копіювання або видалення старих файлів. Після написання коду потрібно зберегти його як файл і запустити його в пакетному режимі. Після виконання коду на пакетному режимі користувач повинен мати можливість переміщати або видаляти старі файли відповідно до їх потреб.
- Проблема
- Рішення
- Примітка
Проблема
Я хотів би створити пакетний сценарій, який може копіювати файли, які старше 30 днів, з однієї папки в іншу. Я хочу, щоб він також видалив 30-денні файли з вихідної папки після копіювання до папки призначення.
Рішення
Наступний скрипт windows буде переміщати файли старше вказаної дати з C: folder1 до C: folder2. До старшого я припускаю, що вони не будуть змінені після певної дати.
Дата передається у форматі yyyymmdd. Коли файли переміщуються до папки2, вони автоматично видаляються з папки1.
# Сценарій movefiles.txt # Вхідний аргумент - дата var str date # Отримати список файлів, які не змінюються після $ date. var str список; lf -n "*" "C: folder1" (($ ftype == "f") AND ($ fmtime $ list # Переміщення файлів по одному. $ list> $ file file move $ file "C: folder2" виконано
Сценарій - у бітерписі. Завантажити бітрейспіси з //www.biterscripting.com.
- Збережіть скрипт як C: Scriptsmovefiles.txt.
- Почніть бітершифрування.
- Зателефонуйте скрипту як:
дата переміщення скрипта movefiles.txt (сьогоднішня дата)
Вище перенесено файли, які не були змінені за 30 днів до цього дня.
Примітка
Завдяки SenHu за цей відгук на форумі.