From e5823c8bc7cadeb97f55327c38b0ee91098e0ca2 Mon Sep 17 00:00:00 2001 From: Syndamia Date: Sun, 8 Nov 2026 19:01:47 +0200 Subject: feat(scripts): Implement archive and unarchive --- scripts/archive | 29 +++++++++++++++++++++++++++++ scripts/unarchive | 29 +++++++++++++++++++++++++++++ 2 files changed, 58 insertions(+) create mode 100755 scripts/archive create mode 100755 scripts/unarchive (limited to 'scripts') diff --git a/scripts/archive b/scripts/archive new file mode 100755 index 0000000..ba50216 --- /dev/null +++ b/scripts/archive @@ -0,0 +1,29 @@ +#!/bin/bash + +if [ -z "$1" ] +then + printf 'Repository: ' + read + set "$REPLY" +fi + +set "$(echo -e "a\n$1\n.\n1s|\.\+/||g\n1s|/\+|/|g\n1p\nQ" | ed -s)" + +if [ ! -d "$1" ] +then + echo 'Not a directory!' + exit 1 +fi + +__rec_ro() { + while read -r f + do + [ ! -w "$f" ] && continue + chwrite -w "$f" + [ -d "$f" ] && __rec_ro "$f" + done <