Você pode usar:
ls /home/user/Desktop/cron_database_hourly/$DAY/*_[012][0-9]*.zip | head -n -1 | \
while read -r f; do rm "$f"; done
Isso localiza todos os arquivos archive no diretório classificado lexicograficamente, depois usa head
para listar todos, exceto o último ( -n -1
) e remove os arquivos listados em um loop while
.
Eu sugiro que você coloque echo
antes de rm
inicialmente, para ver quais comandos serão executados antes de usar ao vivo.