*) echo >&2 "$usage"; exit 1 ;;
esac
done
-shift $(( OPTIND - 1 ))
+shift $(( $OPTIND - 1 ))
## Check the arguments.
case $# in 0 | 1) echo >&2 "$usage"; exit 1 ;; esac
for i in "$logdir/$tag.$date#"*; do
tail=${i##*#}
case "$tail" in [!1-9]* | *[!0-9]*) continue ;; esac
- if [ -f "$i" -a $tail -ge $seq ]; then seq=$(( tail + 1 )); fi
+ if [ -f "$i" -a $tail -ge $seq ]; then seq=$(( $tail + 1 )); fi
done
log="$logdir/$tag.$date#$seq"
## example) end up giving the wrong group write permission to the file for a
## little bit.
umask=$(umask)
-case ${mode+t} in t) ;; *) mode=$(printf %o $(( 0666 & ~umask ))) ;; esac
+case ${mode+t} in t) ;; *) mode=$(printf %o $(( 0666 & ~$umask ))) ;; esac
umask 077; exec 3>"$log"; umask $umask
case ${owner+t} in t) chown "$owner" "$log" ;; esac
chmod $mode "$log"