summaryrefslogtreecommitdiff
path: root/bin/extra/wipe
diff options
context:
space:
mode:
authorRaymaekers Luca <raymaekers.luca@gmail.com>2023-08-30 08:23:45 +0200
committerRaymaekers Luca <raymaekers.luca@gmail.com>2023-08-30 08:23:45 +0200
commit3f8594ee04d2a3d9b40a259daf3b564a53b510fa (patch)
tree66ed50643cdc81af813b5771a99732d0f78bb618 /bin/extra/wipe
parent45d39ae0c67bb086f4df0c366b251e06c888408d (diff)
parent333aaf38c66a1e4ba41d3acea38b21613c0075b2 (diff)
Merge branch 'main' of db:dotfiles
Diffstat (limited to 'bin/extra/wipe')
-rwxr-xr-xbin/extra/wipe13
1 files changed, 13 insertions, 0 deletions
diff --git a/bin/extra/wipe b/bin/extra/wipe
new file mode 100755
index 0000000..ec2abe9
--- /dev/null
+++ b/bin/extra/wipe
@@ -0,0 +1,13 @@
+#!/bin/sh
+[ 0 -eq "$#" ] && >&2 echo 'usage: wipe <file>' && exit 1
+[ ! -f "$1" ] && [ ! -d "$1" ] && >&2 echo "'$1' not found." && exit 1
+
+confirm "sure?" || exit 1
+>&2 printf "\n"
+
+find "$1" -type f -print0 |
+ xargs -0I{} shred -uz "{}" &&
+ [ -d "$1" ] && # remove leftovver empty directories
+ find "$1" | tac | tr '\n' '\0' |
+ xargs -0I{} rm -d "{}" &&
+ >&2 echo "wiped."