Doing a modulo in /bin/sh??
Gary Kline
kline at tao.thought.org
Wed Aug 31 18:35:30 GMT 2005
On Wed, Aug 31, 2005 at 11:18:57AM -0700, Philip Hallstrom wrote:
> > I can grab the results of "w=$date+%U)"; in C an use the modulo
> > operator; is there a way to do this is /bin/sh? ot zsh?
> >
> > tia, guys,
> >
> > gary
> >
> >#/bin/sh
> >w=$(date +%U)
> >echo "w is $w";
> >(even=$(w % 2 )); ## flubs.
> >echo "even is $even"; ## flubs.
> >
> >if [ $even -eq 0 ] ## flubs, obv'ly.
> >then
> > echo "week is even";
> >else
> > echo "week is odd";
> >fi
>
> Take a look at 'expr'....
>
> philip at foxtrot:~
> % expr 1 % 2
> 1
> philip at foxtrot:~
> % expr 2 % 2
> 0
Thankee, sir; I forgot that with ash/sh/<&c>, y'gotta use
expr; and inside backticks in cases like this one.
gary
#/bin/sh
w=$(date +%U)
echo "w is $w";
even=`expr ${w} % 2`;
echo "even is $even";
if [ $even -eq 0 ]
then
echo "week is even";
else
echo "week is odd";
fi
--
Gary Kline kline at thought.org www.thought.org Public service Unix
More information about the freebsd-questions
mailing list