diff options
Diffstat (limited to 'decode.sh')
-rwxr-xr-x | decode.sh | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/decode.sh b/decode.sh new file mode 100755 index 0000000..cd483f1 --- /dev/null +++ b/decode.sh @@ -0,0 +1,33 @@ +#!/bin/sh +set -efu + +log() { + printf "$@" >&2 +} + +fatal() { + log "$@" + exit 1 +} + +[ -z "${XCTUDIR:-}" ] && \ + fatal "Please, set environment variable XCTUDIR, +e.g. XCTUDIR=/home/zar/opt/Digi/XCTU-NG\n" + +[ $# -ne 1 ] && fatal "usage: %s <file.ehx2>\n" "$0" + +file=$1 +[ ! -e "$file" ] && fatal "No file \"%s\" exists\n" "$file" + +dir=$(dirname "$file") +dec=$(printf "%s.dec" "$file") + +touch "$dec" + +chmod u-w "$dir" +[ ! -e "XCTUDecodeRequest.class" ] && javac -cp "${XCTUDIR}/plugins/*" XCTUDecodeRequest.java +java -cp "${XCTUDIR}/plugins/*:." XCTUDecodeRequest "$file" 2>/dev/null +chmod u+w "$dir" + +cat "$dec" +rm "$dec" |