#cron #cpanel
#cron #cpanel
Вопрос:
У меня есть ввод задания cron, как показано.
Как есть, он удаляет большинство файлов 13-дневной давности или старше, но не всегда получает их все, и он часто запускается в непустые папки, которые он не может удалить (и отчеты как таковые). Ошибка: «найти: невозможно удалить'[усеченный]’: каталог не пуст»
потребовались недели проб и ошибок, чтобы добраться туда, где я сейчас, и мне нужно какое-то руководство о том, как улучшить это отсюда. похоже, что способ, которым я должен вводить команды cron в свою cpanel, чтобы заставить их работать, не всегда соответствует предписанным решениям, указанным для команд cron — отсюда недели проб и ошибок.
find /home/account/mysite.com/subfolder/iamworkingin/ -mindepth 1 -mtime 13 -delete
Мне нужно, чтобы все, что было до 13 дней до текущей даты, было полностью удалено за пределы указанной рабочей папки, удалив все вложенные папки на нескольких / разных уровнях глубины.
Ответ №1:
Вы могли бы попробовать увеличить ваш -mindepth
до 2 или более.
Или вы могли бы попробовать -exec
. Таким образом, вы могли бы принудительно удалить, используя rm -f
и / или rm -r
для каталогов / recursive .
find /home/account/mysite.com/subfolder/iamworkingin/ -mindepth 2 -mtime 13 -exec rm -fr {} ;
Комментарии:
1. Глубина вложенных папок может варьироваться, иногда она составляет 5 или около того. итак, я должен удалить
-mindepth
и вместо этого использовать-exec
? В вашем предложении сказаноrm -f
, что ваш пример используетrm -r
. Что я должен использовать здесь?-exec
Требует ли использование использования{}
? Поскольку мой графический интерфейс cPanel не позволяет мне вводить строку закрытия;
.2. Извиняюсь за путаницу. Я отредактировал, чтобы уточнить использование
-f
и-r
. Хотя забудьте об этом, если ваша cPanel все равно не разрешает-exec
. Так что, возможно, было бы лучше увеличитьmindepth
до 5 или более с тем, что у вас есть в первую очередь, и посмотреть, поможет ли это.