Date: Thu, 24 Jun 2010 09:38:33 -0700 From: Carl Johnson <carlj@peak.org> To: freebsd-questions@freebsd.org Subject: Re: .sh check for numeric content Message-ID: <87lja4mlme.fsf@cjlinux.localnet> In-Reply-To: <20100624033257.2D074BEA6@kev.msw.wpafb.af.mil> (Karl Vogel's message of "Wed\, 23 Jun 2010 23\:32\:57 -0400 \(EDT\)") References: <4C22B3D7.6070102@comclark.com> <20100624033257.2D074BEA6@kev.msw.wpafb.af.mil>
next in thread | previous in thread | raw e-mail | index | archive | help
vogelke+unix@pobox.com (Karl Vogel) writes: >>> On Thu, 24 Jun 2010 09:24:39 +0800, >>> Aiza <aiza21@comclark.com> said: > > A> Receiving a variable from the command line that is suppose to contain > A> numeric values. How do I code a test to verify the content is numeric? > > The script below will work with the Bourne or Korn shell. > Results for "0 1 12 1234 .12 1.234 12.3 1a a1": > > 0 is numeric > 1 is numeric > 12 is numeric > 1234 is numeric > .12 is numeric > 1.234 is numeric > 12.3 is numeric > 1a is NOT numeric > a1 is NOT numeric You might want to try testing "123..45". I tried changing: > if expr "$arg" : "[0-9]*[\.0-9]*$" > /dev/null to: if expr "$arg" : "[0-9]*\.*[0-9]*$" > /dev/null but it still claims that it is numeric, so *I* must be missing something. -- Carl Johnson carlj@peak.org
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?87lja4mlme.fsf>