@@ -16,11 +16,11 @@ declare -A HEADERS # assoc headers of last request
16
16
declare ISOK=0 # is last request ok?
17
17
18
18
# message helpers
19
- line () { [[ $NOCOLOR ]] && echo -e " $1 " || echo -e " \e[${3:- 0} ;$2 m$1 \e[0m" ; }
20
- error () { line " $1 " 31; if [[ ! ${2 :- 0} -eq 0 ]] ; then exit $2 ; fi }
21
- ok () { line " ${1:- Done} " 32; }
22
- info () { line " $1 " 33; }
23
- comment () { line " $1 " 2 1 ; }
19
+ line () { echo -e " \e[${3:- 0} ;$2 m$1 \e[0m" ; if [[ " $4 " != " " ]] ; then exit $4 ; fi }
20
+ error () { line " $1 " 31 0 $2 ; }
21
+ ok () { line " ${1:- Done} " 32 0 $2 ; }
22
+ info () { line " $1 " 33 0 $2 ; }
23
+ comment () { line " $1 " 30 1 $2 ; }
24
24
25
25
# show version
26
26
version () { echo v0.6.4; }
@@ -29,10 +29,7 @@ version() { echo v0.6.4; }
29
29
update ()
30
30
{
31
31
NEWVER=` curl -sSL https://raw.githubusercontent.com/adhocore/tusc.sh/master/VERSION`
32
- if [ " v$NEWVER " == " $( version) " ]; then
33
- ok " Already latest version"
34
- return 0
35
- fi
32
+ [[ " v$NEWVER " == " $( version) " ]] && ok " Already latest version" 0
36
33
37
34
info " Updating $TUSC ..."
38
35
curl -sSLo ${FULL} https://raw.githubusercontent.com/adhocore/tusc.sh/master/tusc.sh
81
78
tus-config () # $1 = key, $2 = value
82
79
{
83
80
TUSFILE=` realpath ~ /.tus.json`
84
- if [ ! -f $TUSFILE ]; then echo ' {}' > $TUSFILE ; fi
81
+ [[ -f $TUSFILE ]] || echo ' {}' > $TUSFILE
85
82
TUSJSON=` cat $TUSFILE `
86
83
87
84
if [[ $# -eq 0 ]]; then
@@ -96,7 +93,7 @@ tus-config() # $1 = key, $2 = value
96
93
# create a part of file
97
94
filepart () # $1 = start_byte, $2 = byte_length, $3 = file
98
95
{
99
- dd bs=32M skip=" $1 " count=" $2 " iflag=skip_bytes ${3: +if=" $3 " } of=" $3 .part" > /dev/null 2>&1
96
+ dd bs=32M skip=" $1 " count=" $2 " iflag=skip_bytes ${3: +if=" $3 " } ${3 : + of=" $3 .part" } > /dev/null 2>&1
100
97
101
98
echo ` realpath $3 .part`
102
99
}
@@ -113,7 +110,7 @@ request()
113
110
if [[ " ${key: 0: 5} " == " HTTP/" ]]; then
114
111
value=$( echo " $key " | grep -Eo ' [0-9]{3}' ) key=Status
115
112
fi
116
- value=" ${value/ / } " HEADERS[$key ]=" ${value% $' \r ' } "
113
+ value=" ${value/ / } " HEADERS[$key ]=" ${value% $' \r ' } "
117
114
done < <( cat " $HEADER " )
118
115
119
116
if [[ " ${HEADERS[Status]} " == " 20" * ]]; then ISOK=1; else ISOK=0; fi
@@ -155,11 +152,11 @@ on-exit()
155
152
rm -f $FILE .part $HEADER0 $HEADER
156
153
[[ $OFFSET ]] || return 0
157
154
158
- OFFSET=${HEADERS[Upload-Offset]:- 0} LEFTOVER=$(( SIZE - OFFSET))
155
+ OFFSET=${HEADERS[Upload-Offset]:- 0} LEFTOVER=$(( SIZE - OFFSET))
159
156
if [[ $LEFTOVER -eq 0 ]]; then
160
157
ok " ✔ Uploaded successfully!"
161
158
else
162
- error " ✖ Unfinished upload, please rerun the command to resume."
159
+ error " ✖ Unfinished upload, please rerun the command to resume." 1
163
160
fi
164
161
info " URL: $TUSURL "
165
162
}
@@ -195,7 +192,7 @@ trap on-exit EXIT
195
192
SUMALGO=${SUMALGO:- sha1}
196
193
[[ $SUMALGO == " sha" * ]] || error " --algo '$SUMALGO ' not supported" 1
197
194
198
- FILE=` realpath $FILE ` NAME=` basename $FILE ` SIZE=` stat -c %s $FILE ` HEADER=` mktemp -t tus.XXXXXXXXXX`
195
+ FILE=` realpath $FILE ` NAME=` basename $FILE ` SIZE=` stat -c %s $FILE ` HEADER=` mktemp -t tus.XXXXXXXXXX`
199
196
200
197
# calc key &/or checksum
201
198
[[ $DEBUG ]] && comment " > ${SUMALGO} sum $FILE "
0 commit comments