From c6780025f6ef7d027bb224098ef2370c6f773327 Mon Sep 17 00:00:00 2001 From: Alex Tavarez Date: Fri, 12 Sep 2025 09:47:53 -0400 Subject: [PATCH] Renamed script, and made what is being deleted conditional and based on user input for piped 'grep' command --- zfs/destroy-apt-snapshots.sh | 4 ---- zfs/zfs-selective-destroy.sh | 14 ++++++++++++++ 2 files changed, 14 insertions(+), 4 deletions(-) delete mode 100644 zfs/destroy-apt-snapshots.sh create mode 100644 zfs/zfs-selective-destroy.sh diff --git a/zfs/destroy-apt-snapshots.sh b/zfs/destroy-apt-snapshots.sh deleted file mode 100644 index 746980c..0000000 --- a/zfs/destroy-apt-snapshots.sh +++ /dev/null @@ -1,4 +0,0 @@ -#!/bin/bash -set -euo pipefail - -zfs list -t snapshot | grep 'apt-' | sed 's| .*$||g' | head -n -5 | xargs -d '\n' -I {} sudo zfs destroy {} \ No newline at end of file diff --git a/zfs/zfs-selective-destroy.sh b/zfs/zfs-selective-destroy.sh new file mode 100644 index 0000000..533d188 --- /dev/null +++ b/zfs/zfs-selective-destroy.sh @@ -0,0 +1,14 @@ +#!/bin/bash +set -euo pipefail + +zfs-clean () { + if [ -z "$1" ]; then + exit 1 + elif [ "$1" == "upgrades" ]; then + if [ -z "$2" ]; then + zfs list -t snapshot | grep 'apt-' | sed 's| .*$||g' | head -n -5 | xargs -d '\n' -I {} sudo zfs destroy {} + else + zfs list -t snapshot | grep "${2}" | sed 's| .*$||g' | head -n -5 | xargs -d '\n' -I {} sudo zfs destroy {} + fi + fi +} \ No newline at end of file