summaryrefslogtreecommitdiff
path: root/bin/backup-clean
diff options
context:
space:
mode:
authorMarc Vertes <mvertes@free.fr>2020-09-25 15:57:37 +0200
committerMarc Vertes <mvertes@free.fr>2020-09-25 15:57:37 +0200
commitaf308ee0510eb896f548ffb9f6a16d8794849fbf (patch)
treecbacd03e15625d4f4a706a9b60c60a4162ebd0f4 /bin/backup-clean
parentfdca1b712c9d62213de1002a02b040fa66bfc0f1 (diff)
update
Diffstat (limited to 'bin/backup-clean')
-rwxr-xr-xbin/backup-clean10
1 files changed, 7 insertions, 3 deletions
diff --git a/bin/backup-clean b/bin/backup-clean
index 0c6e38a..30d25db 100755
--- a/bin/backup-clean
+++ b/bin/backup-clean
@@ -54,11 +54,12 @@ retention_delay() {
}
dest=/.history
-while getopts :nv opt; do
+while getopts :d:nv opt; do
case $opt in
+ (d) tsn=$(date2ts "$OPTARG") ;;
(n) optn=1 ;;
(v) optv=1 ;;
- (*) echo "Usage: $0 [-nv] [dir]"; exit 1;
+ (*) echo "Usage: $0 [-nv] [dir]"; exit 1 ;;
esac
done
shift $((OPTIND - 1))
@@ -66,6 +67,8 @@ shift $((OPTIND - 1))
# Sorted list of backups, most recent first.
lbu=$(ls -rv "$dest")
+lasy=${lbu##*
+}
for d in $lbu; do
tsc=$(date2ts "$d")
if ! [ "$tsp" ]; then
@@ -75,7 +78,8 @@ for d in $lbu; do
fi
mrd=$(retention_delay "$tsp")
dp=$((tsp - tsc))
- if [ $((dp < mrd)) = 1 ]; then
+ #if [ $((dp < mrd)) = 1 ]; then
+ if [ "$d" != "last" -a $((dp < mrd)) = 1 ]; then
[ "$optv" ] && echo "delete $dest/$d"
[ "$optn" ] || rm -rf "${dest:?}/$d"
else