#!/usr/bin/env bash set -euxo pipefail; backupsToKeep={{ backups_to_keep | quote }}; function onlyDatedFiles() { grep --perl-regexp '/\d+(-\d+)*(\.[^/]+)*$'; } function getDirName() { grep --only-matching --perl-regexp '^.+(?=/[^/]+)'; } find -H {{ backups_directory | quote }} -type f | onlyDatedFiles | getDirName | sort --unique | while read -r dir; do find "$dir" -type f | onlyDatedFiles | sort --reverse | tail --lines=+$((backupsToKeep + 1)) | xargs rm --force; done