fwget.sh
881 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#!/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"