Article View: es.comp.os.linux.programacion
Article #12158Re: Bash
From: Claudio S. Suarez
Date: Sun, 19 Aug 2001 16:34
Date: Sun, 19 Aug 2001 16:34
44 lines
2418 bytes
2418 bytes
El Sat, 18 Aug 2001 19:31:42 -0300, Francisco F. Artese escribi�:
>PD: Es imposible entonces en bash hacer 299.39 + 2.45 ????
La shell est�ndar solo trabaja con enteros, que yo sepa.
Creo que la C-shell (sch) si trabaja con decimales, pero
no te se decir fijo. Habr�a que mirar en la p�gina de manual.
Pero si se pueden hacer cuentas de la precision que se te antoje,
usando el bc.
El bc lee datos de su entrada est�ndar, efect�a las operaciones
y deja el resultado en su salida est�ndar.
Por ejemplo:
bash$ bc
299.39 + 2.45
301.84
^D
bash$
( el ^D es el fin de fichero )
Si quieres incluirlo en un script:
echo "299.39 + 2.45" | bc
O para guardar el resultado en una variable:
RESULTADO=`echo "299.39 + 2.45" | bc`
Otra forma es usar el awk, que tiene aritm�tica con decimales. No es
muy elegante porque el awk est� pensado para tratar ficheros de l�neas,
pero valer, vale.
awk 'BEGIN{ print 23.4 + 3.73}' /dev/nullawk 'BEGIN{ print 23.4 +
3.73}' /dev/null
Debe ser mejor es el perl, que vale para todo:
perl -e 'print 23.4 + 3.73'
aunque sea matar moscas a ca�onazos.
Un saludo.
--claudio--
Technical Details
Message-ID:
<slrn9nvqki.um.claudio@cacho.celta>Path:
arc1-ca.pugleaf.net!archiver1.google.com!newsfeed.google.com!newsfeed.stanford.edu!news.tele.dk!small.news.tele.dk!195.238.2.15!skynet.be!skynet.be!Amsterdam.Infonet!News.Amsterdam.UnisourceCS!newsinternetskywayteltow!post.skyway.de!news.jazztel.es!ningun.host!claudioReferences:
<hj97l9.p7j.ln@127.0.0.1> <slrn9nj7i2.b7.claudio@cacho.celta> <rgehl9.4u3.ln@127.0.0.1> <etfil9.tb.ln@127.0.0.1> <ulcjl9.8v1.ln@127.0.0.1> <slrn9nt9pt.82.claudio@cacho.celta> <ecqml9.rk7.ln@127.0.0.1>Show Full Headers
Complete Article Headers
X-Google-Language: SPANISH,ASCII X-Google-Thread: f86c8,9df979b8f9cb249b X-Google-Attributes: gidf86c8,public X-Google-ArrivalTime: 2001-08-20 11:16:50 PST Path: arc1-ca.pugleaf.net!archiver1.google.com!newsfeed.google.com!newsfeed.stanford.edu!news.tele.dk!small.news.tele.dk!195.238.2.15!skynet.be!skynet.be!Amsterdam.Infonet!News.Amsterdam.UnisourceCS!newsinternetskywayteltow!post.skyway.de!news.jazztel.es!ningun.host!claudio From: claudio@ningun.sitio.es (Claudio S. Suarez) Newsgroups: es.comp.os.linux.programacion Subject: Re: Bash Lines: 44 Message-ID: <slrn9nvqki.um.claudio@cacho.celta> References: <hj97l9.p7j.ln@127.0.0.1> <slrn9nj7i2.b7.claudio@cacho.celta> <rgehl9.4u3.ln@127.0.0.1> <etfil9.tb.ln@127.0.0.1> <ulcjl9.8v1.ln@127.0.0.1> <slrn9nt9pt.82.claudio@cacho.celta> <ecqml9.rk7.ln@127.0.0.1> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit X-Server-Date: 19 Aug 2001 16:34:27 GMT X-Newsreader: slrn (0.9.4.3 UNIX) Date: 19 Aug 2001 16:34:27 GMT NNTP-Posting-Host: 212.106.245.52 X-Complaints-To: newsmaster@jazztel.com X-Trace: news.jazztel.es 998330300 212.106.245.52 (Mon, 20 Aug 2001 19:58:20 CEST) NNTP-Posting-Date: Mon, 20 Aug 2001 19:58:20 CEST Organization: Jazztel