You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
kmymoney/contrib/viewxml.sh

46 lines
1.1 KiB

# A bash script to view a temporary copy of a KMyMoney XML file in your favourite editor
# (works with some gnucash files too!)
# Usage:- viewxml [filename]
# Save this script somewhere in your path and remember to apply execute permissions (chmod a+x viewxml)
# Set the following variables as required
TMPDIR=/tmp # a temporary directory for storing the file copy
EDITOR=kate # your editor of choice
WIPE='rm -f' # command to get rid of the temporary file copy (could be replaced with a shredder or something)
#
declare -i TYPE
if [ -z $1 ]; then
FILE=`kdialog --getopenfilename . '*.*'`;
else
FILE=$1;
fi
TYPE=0 # default type, gzipped file
read -n 14 <$FILE HEAD
if [ "$HEAD" = "-----BEGIN PGP" ]; then
TYPE=1; # encrypted file
elif [ "$HEAD" = "<?xml version=" ]; then
TYPE=2;
fi
BASENAME=`basename $FILE`
case $TYPE in
0) echo $BASENAME is gzipped
cp $FILE $TMPDIR/$BASENAME.gz
gunzip $TMPDIR/$BASENAME.gz;;
1) echo $BASENAME is encrypted
gpg -d $FILE >$TMPDIR/$BASENAME;;
2) echo $BASENAME is plaintext
cp $FILE $TMPDIR/$BASENAME;;
esac
$EDITOR $TMPDIR/$BASENAME
$WIPE $TMPDIR/$BASENAME