Blame rename-tarball

b18622e
#!/bin/bash
b18622e
b18622e
# Usage:
b18622e
#     ./rename-tarball original-name.tar.gz new-name.tar.gz
b18622e
b18622e
set -euo pipefail
b18622e
IFS=$'\n\t'
b18622e
b18622e
positional_args=()
b18622e
while [[ "$#" -gt 0 ]]; do
b18622e
    arg="${1}"
b18622e
    case "${arg}" in
b18622e
        -h|--help)
b18622e
            print_usage
b18622e
            exit 0
b18622e
            ;;
b18622e
        *)
b18622e
            positional_args+=("$1")
b18622e
            shift
b18622e
            ;;
b18622e
    esac
b18622e
done
b18622e
b18622e
original_name=${positional_args[0]:-}
b18622e
if [[ -z ${original_name} ]]; then
b18622e
    echo "error: missing original tarball name"
b18622e
    exit 1
b18622e
fi
b18622e
b18622e
new_name=${positional_args[1]:-}
b18622e
if [[ -z ${new_name} ]]; then
b18622e
    echo "error: missing new tarball name"
b18622e
    exit 1
b18622e
fi
b18622e
b18622e
original_name=${original_name/%.tar.gz}
b18622e
new_name=${new_name/.tar.gz}
b18622e
b18622e
echo "Original: ${original_name}.tar.gz"
b18622e
echo "New name: ${new_name}.tar.gz"
b18622e
b18622e
mkdir "temp-${new_name}"
b18622e
pushd "temp-${new_name}"
b18622e
tar xf "../${original_name}.tar.gz"
b18622e
mv "${original_name}" "${new_name}"
b18622e
tar czf ../"${new_name}.tar.gz" "${new_name}"
b18622e
rm -rf "${new_name}"
b18622e
popd
b18622e
rmdir "temp-${new_name}"