Files
blackbox/bin/blackbox_edit
tlimoncelli@stackexchange.com 28bff4ff9f Add "set -e" to all scripts.
2014-09-08 20:25:38 +00:00

36 lines
951 B
Bash
Executable File

#!/usr/bin/env bash
#
# blackbox_edit.sh -- Decrypt a file temporarily for edition, then re-encrypts it again
#
set -e
. _blackbox_common.sh
for param in """$@""" ; do
unencrypted_file=$(mktemp)
encrypted_file=$(get_encrypted_filename "$param")
echo ========== PLAINFILE "$unencrypted_file"
fail_if_not_on_cryptlist "$unencrypted_file"
fail_if_not_exists "$encrypted_file" "This should not happen."
if [[ ! -s "$unencrypted_file" ]]; then
rm -f "$unencrypted_file"
fi
if [[ -f "$unencrypted_file" ]]; then
echo SKIPPING: "$1" "Will not overwrite non-empty files."
continue
fi
prepare_keychain
decrypt_file "$encrypted_file" "$unencrypted_file"
$EDITOR $unencrypted_file
encrypt_file "$unencrypted_file" "$encrypted_file"
shred_file "$unencrypted_file"
echo "========== UPDATED ${encrypted_file}"
echo "Likely next step:"
echo " git commit -m\"${encrypted_file} updated\" $encrypted_file"
done