2022-03-25 22:52:40 +00:00
|
|
|
#!/bin/sh
|
2022-04-15 18:05:20 +00:00
|
|
|
set -e # exit on failure
|
|
|
|
IFS=$(printf '\n\t') # smarter ifs
|
2022-05-28 16:52:31 +00:00
|
|
|
[ "$1" = "-d" ] && awk 'f;/^exit/{f=1}' "$2" | head -c-1 | zstd -cd | ifne sponge "$2" && exit
|
2022-04-16 23:21:07 +00:00
|
|
|
[ "$1" = "-p" ] && p="$2" && shift 2 # save prefix if present
|
2022-04-26 17:20:58 +00:00
|
|
|
{ cat << 'EOF'; zstdmt -c19 "$@"; } | sed "2s/$/${1##*[./]})/;7s/^/$p /" | sponge "$1"
|
2022-04-16 23:21:07 +00:00
|
|
|
#!/bin/sh
|
|
|
|
dir=$(dirname "$0") out=$(mktemp -t .zzXXXX.
|
2022-05-28 16:52:31 +00:00
|
|
|
awk 'f;/^exit/{f=1}' "$0" | head -c-1 | zstd -cd > "$out"
|
2022-03-25 22:52:40 +00:00
|
|
|
chmod +x "$out"
|
|
|
|
ln -s "$out" "$dir"
|
|
|
|
trap "res=$?" 0 1 2 3 5 10 13 15
|
2022-04-15 18:05:20 +00:00
|
|
|
"$dir/$(basename "$out")" "$@"
|
|
|
|
rm "$out" "$dir/$(basename "$out")"
|
2022-03-25 22:52:40 +00:00
|
|
|
exit $res
|
|
|
|
EOF
|