Итак, я выполняю сценарий перемещения для некоторых файлов старше 1 месяца в неделю:
#!/bin/bash
echo "Moving Recordings Older than 30 days!";
/bin/find /var/services/homes/recordings/recording_list/ -type f -mtime +30 \
-exec mv '{}' /var/services/homes/recordings/Old/recording_list/ \;
Я хочу, чтобы скрипт создавал файл с отметкой и записывал, сколько файлов было
Спасибо,
Чтобы получить файл журнала, добавьте параметр -v в mv и заберите вывод:
find srcdir -type f -mtime +30 -exec mv -v {} destdir \; >output.log
Если вы хотите, чтобы файл журнала содержал дату, и у вас есть последняя версия bash (> = 4.2-alpha), используйте:
find srcdir -type f -mtime +30 -exec mv -v {} destdir \; >"$(printf 'file%(%F)T.log' -1)"
Если у вас нет недавнего bash, вместо этого используйте date.
Для большей скорости используйте -exec ... +:
find srcdir -type f -mtime +30 -exec mv -vt destdir {} + >|"$(printf 'file%(%F)T.log' -1)"
Вместо вызова нового процесса mv для каждого найденного файла, это перемещает много файлов с одним экземпляром mv.
Чтобы получить файл журнала, добавьте параметр -v в mv и заберите вывод:
find srcdir -type f -mtime +30 -exec mv -v {} destdir \; >output.log
Если вы хотите, чтобы файл журнала содержал дату, и у вас есть последняя версия bash (> = 4.2-alpha), используйте:
find srcdir -type f -mtime +30 -exec mv -v {} destdir \; >"$(printf 'file%(%F)T.log' -1)"
Если у вас нет недавнего bash, вместо этого используйте date.
Для большей скорости используйте -exec ... +:
find srcdir -type f -mtime +30 -exec mv -vt destdir {} + >|"$(printf 'file%(%F)T.log' -1)"
Вместо вызова нового процесса mv для каждого найденного файла, это перемещает много файлов с одним экземпляром mv.