Shell Scripting Help
kassube at gmx.net
Tue May 15 06:12:14 UTC 2007
> # Let the shell do the basic math instead of calling an external
I like your logic, although I'd say "Better let date do the math instead
of writing a faulty script" :)
> if [ $DAY -eq 0 ]; then
> MONTH=$(( MONTH - 1 ))
> [ $MONTH -eq 0 ] && $MONTH = 12
E.g. the last line should be
[ $MONTH -eq 0 ] && MONTH=12 && YEAR=$(($YEAR - 1))
but this is untested, so it might be faulty as well.
> On 5/15/07, Nils Kassube <kassube at gmx.net> wrote:
> > How about this one?
> echo "1 day ago was: $(date -d yesterday '+%m %d %Y')"
> Thanks, Nils.. I didn't know date had that argument :)
That's the beauty of the date command -- it understands many verbose
descriptions of the date / time to display. Meanwhile i think it would
have been more consistent to write the command like this:
echo "1 day ago was: $(date -d '1 day ago' '+%m %d %Y')"
More information about the ubuntu-users