Назад | Перейти на главную страницу

найти файлы в подкаталоге с помощью find in centos

Моя текущая cronjob

* 10 * * * /bin/find /var/spool/record/ -type f -exec /bin/rm {} +

Он удаляет все файлы каждый день в 10 утра.

Я пытаюсь удалить определенный файл размером менее 90 КБ в текущем каталоге. для этого

* 10 * * * /bin/find /var/spool/record/ -type f -iname "*.gsm" -size -90K -exec /bin/rm {} +

Меня беспокоит, что указанный выше синтаксис удалит также файлы GSM из подкаталога, которые будут созданы в / var / spool / record / daily и будут вести учет для этой конкретной даты. Как / var / spool / record / date1, / var / spool / record / date2.

Я также хочу удалить файл GSM старше 60 дней в / var / spool / record / и его подкаталог 10 числа каждого месяца в 10:00.

* 10 10 * * /bin/find /var/spool/record/ -type f -iname "*.gsm" -mtime +60 -exec /bin/rm {} +

Какой был бы правильный синтаксис для подкаталога del и файла, которые старше 60 дней.

Написанная вами cron будет запускаться каждую минуту с 10:00 до 10:59. Используйте следующее, чтобы исправить это:

00 10 10 * * / bin / find / var / spool / record / -type f -name "* .gsm" -mtime +60 -exec / bin / rm {} \;

Это приведет к удалению файлов .gsm из / var / spool / record и его подкаталогов, которые старше 60 дней в 10 утра и 10 числа каждого месяца.