instpkg cleanup
[cmdllinux.git] / scripts / _wget_retval_sh_fd.sh
blob0466faedfca55717b4428a4e1bc3b7ca337fc0d1
2 exec 4>&1
3 WGET_CONNOPTS="--passive-ftp -t 1 --timeout=5"
4 WGET_OPTS="-q --progress=dot --show-progress"
6 [ -z "$1" ] && exit 1
7 URL="$1"
8 FILE="${URL##*/}"
10 bar=`expr $(stty size | cut -d " " -f 2) - ${#FILE} - 1 - 2 - 4 - 1 - 1`
12 retval=`(((wget $WGET_OPTS $WGET_CONNOPTS $URL -O $FILE 2>&1; printf "$?" >&3) | \
13 sed -u -n -e 's/%.*//' -e 's/.* //p' | \
14 while read perc; do
15 if [ "$dperc" != "$perc" ] && [ ! -z "$perc" ]; then
16 barp=$(($bar * $perc / 100))
17 barend=$(($bar - $barp))
18 printf "\r%-$((${#FILE} + 1))s" "$FILE"
19 printf "["
20 for i in $(seq 1 $barp); do
21 printf "#"
22 done
23 for i in $(seq 1 $barend); do
24 printf " "
25 done
26 printf "] "
27 printf "%4s" "${perc}%"
28 dperc=$perc
30 done) >&4) 3>&1`
32 if [ "$retval" = "0" ]; then
33 printf "\r%-$((${#FILE} + 1))s" "$FILE"
34 printf "["
35 for i in $(seq 1 $bar); do
36 printf "#"
37 done
38 printf "] "
39 printf "%4s" "100%"
40 printf "\n"
43 exit $retval