Dolda2000 GitWeb
/
utils.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix global name bug.
[utils.git]
/
autodlctl
diff --git
a/autodlctl
b/autodlctl
index
3f390ce
..
4675ad0
100755
(executable)
--- a/
autodlctl
+++ b/
autodlctl
@@
-2,6
+2,27
@@
paths=(/home/pub/video/anime $HOME/dc/autodl/cur)
paths=(/home/pub/video/anime $HOME/dc/autodl/cur)
+function findcurep
+{
+ if [ -r badlist ]; then
+ echo badlist `head -n 1 badlist`
+ return 0
+ fi
+ if [ -r curep ]; then
+ if [ -r maxep ]; then
+ if [ "`cat curep`" -le "`cat maxep`" ]; then
+ echo curep `cat curep`
+ return 0
+ fi
+ else
+ echo curep `cat curep`
+ return 0
+ fi
+ fi
+ echo none
+ return 1
+}
+
function getnext
{
cd "$1/.autodl/"
function getnext
{
cd "$1/.autodl/"
@@
-9,20
+30,15
@@
function getnext
echo "checking $tag"
sexpr="`cat sexpr`"
unset badsizes
echo "checking $tag"
sexpr="`cat sexpr`"
unset badsizes
- if [ -r "badlist" ]; then
- read curep <"badlist"
- echo "downloading bad files, curep $curep"
- epfrom=badlist
- elif [ -r curep ]; then
- curep="`cat curep`"
- echo "downloading series, curep $curep"
- epfrom=curep
- else
+ epinfo=(`findcurep`)
+ if [ "${epinfo[0]}" = none ]; then
echo "no available episode of $tag" >&2
echo "$tag" >>"$HOME/dc/autodl/faulty"
touch disabled
return 1
fi
echo "no available episode of $tag" >&2
echo "$tag" >>"$HOME/dc/autodl/faulty"
touch disabled
return 1
fi
+ epfrom="${epinfo[0]}"
+ curep="${epinfo[1]}"
unset badsizesl
if [ -r badsizes ]; then
badsizesl="$(sed -n "s/^0*$curep \([^#]*\)\( *#.*\)\?$/\1/p" badsizes)"
unset badsizesl
if [ -r badsizes ]; then
badsizesl="$(sed -n "s/^0*$curep \([^#]*\)\( *#.*\)\?$/\1/p" badsizes)"
@@
-90,13
+106,6
@@
function getnext
mv -f newbadlist badlist
if [ `wc -l <badlist` -eq 0 ]; then
rm badlist
mv -f newbadlist badlist
if [ `wc -l <badlist` -eq 0 ]; then
rm badlist
- if [ -r curep ]; then
- if [ -r maxep ] && [ "`cat curep`" -gt "`cat maxep`" ]; then
- touch disabled
- fi
- else
- touch disabled
- fi
echo "$tag has no more bad episodes"
echo "$tag" >>"$HOME/dc/autodl/badmaxed"
fi
echo "$tag has no more bad episodes"
echo "$tag" >>"$HOME/dc/autodl/badmaxed"
fi
@@
-105,21
+114,28
@@
function getnext
if [ "$estat" = dbl ]; then
echo -en "${tag}\n${curep}\n" >>"$HOME/dc/autodl/done"
echo -en "${tag}\n$((${curep} + 1))\n" >>"$HOME/dc/autodl/done"
if [ "$estat" = dbl ]; then
echo -en "${tag}\n${curep}\n" >>"$HOME/dc/autodl/done"
echo -en "${tag}\n$((${curep} + 1))\n" >>"$HOME/dc/autodl/done"
- let
curep+=2
+ let
"nextep=curep+2"
else
echo -en "${tag}\n${curep}\n" >>"$HOME/dc/autodl/done"
else
echo -en "${tag}\n${curep}\n" >>"$HOME/dc/autodl/done"
- let
curep++
+ let
"nextep=curep+1"
fi
fi
- echo "$
cur
ep" >curep
+ echo "$
next
ep" >curep
if [ -r maxep ]; then
if [ -r maxep ]; then
- if [ "$curep" -gt "`cat maxep`" ]; then
- touch disabled
+ if [ "$nextep" -gt "`cat maxep`" ]; then
echo "$tag has reached max"
echo "$tag" >>"$HOME/dc/autodl/maxed"
fi
fi
;;
esac
echo "$tag has reached max"
echo "$tag" >>"$HOME/dc/autodl/maxed"
fi
fi
;;
esac
+ if [ "$estat" = bad ]; then
+ echo "episode reported as bad, adding to badlist"
+ echo "$curep" >>badlist
+ fi
+ if ! findcurep; then
+ echo "no more episodes to download from $tag"
+ touch disabled
+ fi
fi
fi
rm -f "$outfile"
fi
fi
rm -f "$outfile"