fwget.sh 881 Bytes
#!/bin/bash

BASEURL="http://www.hantek.com.cn/Product/32Driver"
TARGETDIR="./firmware"
ARCHIVE="Driver.rar"
EXTRACTFW="openhantek-extractfw"

if [ -x "./$EXTRACTFW" ]; then
	EXTRACTFW="./$EXTRACTFW"
fi

if [ $# -ge 1 ]; then
	TARGETDIR="$1"
fi

if [ ! -d "$TARGETDIR" ]; then
	mkdir -p "$TARGETDIR"
fi

for MODEL in "2090" "2150" "2250" "5200" "5200A"; do
	echo "Downloading official drivers for DSO$MODEL..."
	wget -O "$ARCHIVE" -q "$BASEURL/$MODEL/$ARCHIVE"

	echo "Extracting useful parts from driver archive..."
	unrar e -inul -n"Driver/*1.*" -y "Driver.rar" "$TARGETDIR"
done

if [ -e "$ARCHIVE" ]; then
	rm "$ARCHIVE"
fi

ORIGINALIFS="$IFS"
IFS="
"
for FILENAME in $(find "$TARGETDIR" -iname "*.sys"); do
	echo ""
	echo "Extracting firmware from $FILENAME..."
	"$EXTRACTFW" "$FILENAME" 2>&1 | grep -v "^BFD:.*IMAGE_SCN_MEM_NOT_PAGED"
	rm "$FILENAME"
done
IFS="$ORIGINALIFS"