#!/usr/bin/env bash level="${level:-19}" cmd=$(which tar) if command -v "gtar" &> /dev/null; then cmd=$(which gtar) fi echo "Using $cmd" # Read first parameter arg1="$1" name="$1".tar.zst.gpg shift echo "Output to $name" # Read second parameter if [[ -z "$*" ]]; then files="$arg1" else files="$*" fi echo "Compressing $files" cores=$(python3 -c "import os; print(os.cpu_count())") echo "Starting ZSTD compression with $cores cores and level $level" "$cmd" -I "zstd -T$cores -$level" --checkpoint=.1024 --totals --totals=SIGUSR1 -cf - "$files" | gpg --symmetric --cipher-algo aes256 -o "$name"