Если вы действительно уверены, что папки создаются ежедневно, вы можете использовать ctime:
Вы можете использовать -print перед тем, как использовать команду delete или exec rm -rf, чтобы убедиться, что все выглядит нормально:
find /data/2018 -mindepth 2 -maxdepth 2 -type d -ctime +10 -print
Затем следует удаление, если все выглядит нормально:
find /data/2018 -mindepth 2 -maxdepth 2 -type d -ctime +10 -delete
ИЛИ '-exec rm -rf'
find /data/2018 -mindepth 2 -maxdepth 2 -type d -ctime +10 -exec rm -rf {} \;
Если вы предпочитаете удалять папки сна мой взгляд, лучше сделать обзор, и я хочу привести еще один пример: отредактируйте XX, сколько дней назад вы хотите удалить с 11-го дня.
for days in {11..XX}; do rm -rf $(date --date "$days days ago" "+%Y%m%d");done|sed 's/./&\//4'|sed 's/./&\//7'|sed 's/^/\/data\//g'
Вывод:
removed directory '/data/2018/12/14'
removed directory '/data/2018/12/13'
removed directory '/data/2018/12/12'
removed directory '/data/2018/12/11'
removed directory '/data/2018/12/10'
removed directory '/data/2018/12/09'
removed directory '/data/2018/12/08'
removed directory '/data/2018/12/07'
removed directory '/data/2018/12/06'
.......