Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 19 Feb 2005 14:06:27 -0300
From:      Alejandro Pulver <alejandro@varnet.biz>
To:        Scott Milliken <scott.milliken@e-comsultant.net>
Cc:        freebsd-questions@freebsd.org
Subject:   Re: How to handle numeric variables in sh?
Message-ID:  <20050219140627.44f632b4@ale.varnet.bsd>
In-Reply-To: <42175A14.3000402@e-comsultant.net>
References:  <20050219125559.3bb98715@ale.varnet.bsd> <42175A14.3000402@e-comsultant.net>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, 19 Feb 2005 10:24:04 -0500
Scott Milliken <scott.milliken@e-comsultant.net> wrote:

> Here's a code snippet of a script I use often to number a bunch of pics 
> in a directory that I think shows how to do what you want to do:
> 
> $PICNUM=100
> for FNAME in DSC*.JPG
> do
>    NEWNAME=My_Pictures-$PICNUM.jpg
>    mv $FNAME $NEWNAME
>    PICNUM=$(($PICNUM+1))
> done
> 
> This works in /bin/sh from my FreeBSD 4.11 system and also bash.  If you 
> want to perform a mathematical operation on a shell variable, just 
> surround the expression with $(( expr )) and it'll work.
> 
> Hope that helps.
> 
> Scott Milliken
>

Thank You.

Y saw the use of '$(( expr ))' some time ago in 'Advanced Bash Scripting Guide', but I thought it was only for 'bash'.

I am using FreeBSD 5.3 and it also works in '/bin/sh'.

Best Regards,
Ale



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20050219140627.44f632b4>