Analisar ls
não é uma boa ideia , então aqui está uma solução que considero mais estável:
find /BACKUPDIR/ -mindepth 1 -maxdepth 1 -type d -print0 | sort -z | head -zn-6 | xargs -0 echo rm -rf
Isso só imprime o comando rm
para fins de teste, se ele fizer o que você deseja, remover echo
e simplesmente adicioná-lo ao seu crontab, por exemplo, para executar todos os domingos às 18:00:
00 18 * * 0 find /BACKUPDIR/ -mindepth 1 -maxdepth 1 -type d -print0 | sort -z | head -zn-6 | xargs -0 rm -rf