🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: es.comp.os.linux.programacion
Article #6991

Re: Aritmetica en bash (comparando tamaños de archivos)

#6991
From: Iñaki Arenaza
Date: Fri, 18 Apr 2003 15:27
49 lines
2914 bytes
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

>>>>> "CountZero" == CountZero  <mark@l3jane.net> writes:

    CountZero> El problema es que no consigo que bash trate A como un
    CountZero> n�mero para poder comparar-lo con la variable donde
    CountZero> guardo el limite de tama�o.

El shell no tiene variables numericas. Son _SIEMPRE_ cadenas de
caracteres. De hecho ni siquiera tiene operaciones de comparacion o
aritmeticas.

Hay que usar la orden 'test' tambien conocida como '[' (si, aunque
parezca mentira, esos if [ ] que escribimos son en realidad la
ejecucion de una orden llamada '[', no es que la sintaxis del if
obligue a poner corchetes)

Si miras la pagina del manual de test, veras que tiene operadores de
comparacion de cadenas y de numeros. Necesitas usar estos
ultimos. Vamos, algo como (las comillas dobles no son obligatorias,
pero si _altamente_ recomendables):

         if [ "$A" -gt "$LIMITE" ]
         then
                ...
         fi

que es en realidad lo mismo (y cuando digo lo mismo es que es
_literalmente_ lo mismo) que:

         if test "$A" -gt "$LIMITE"
         then
                ...
         fi

Saludos. I�aki.

- -- 
  Get PGP/GPG Keys at  http://www.escomposlinux.org/iarenaza/pgpkey.php
  I use free software / Yo uso software libre
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.1 (GNU/Linux)
Comment: Processed by Mailcrypt 3.5.6 <http://mailcrypt.sourceforge.net/>

iD8DBQE+oBltZXLnGT1HLgcRAm6eAKCKf52SDW5lrbY/rJsABpYY58ka8wCfcPrL
8SrIVyZxyKd7xPOHqp+TfqI=
=lYhD
-----END PGP SIGNATURE-----
Technical Details
Message-ID: <87smsf25ci.fsf@barad-dur.escomposlinux.org>
Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!newsfeed.stanford.edu!news-spur1.maxwell.syr.edu!news.maxwell.syr.edu!newsfeed.icl.net!newsfeed.fjserv.net!newsfeed.freenet.de!news.tu-darmstadt.de!fu-berlin.de!news.eteo.mondragon.edu!not-for-mail
References: <b7p0r8$37eii$1@ID-131244.news.dfncis.de>

Show Full Headers
Complete Article Headers
X-Google-Language: SPANISH,ASCII
X-Google-Thread: f86c8,41ea3b247ba1e54d
X-Google-Attributes: gidf86c8,public
X-Google-ArrivalTime: 2003-04-18 08:27:44 PST
Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!newsfeed.stanford.edu!news-spur1.maxwell.syr.edu!news.maxwell.syr.edu!newsfeed.icl.net!newsfeed.fjserv.net!newsfeed.freenet.de!news.tu-darmstadt.de!fu-berlin.de!news.eteo.mondragon.edu!not-for-mail
From: iarenaza@eb2ebu.ampr.org (Iñaki Arenaza)
Newsgroups: es.comp.os.linux.programacion
Subject: Re: Aritmetica en bash (comparando tamaños de
 archivos)
Date: Fri, 18 Apr 2003 17:27:41 +0200
Organization: Mondragon Unibertsitatea - ETEO
Lines: 49
Distribution: es
Message-ID: <87smsf25ci.fsf@barad-dur.escomposlinux.org>
References: <b7p0r8$37eii$1@ID-131244.news.dfncis.de>
NNTP-Posting-Host: 22.red-80-38-245.pooles.rima-tde.net
Mime-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Transfer-Encoding: 8bit
X-Trace: poseidon.eteo.muni.es 1050679662 8089 80.38.245.22 (18 Apr 2003 15:27:42 GMT)
X-Complaints-To: newsmaster@eteo.mondragon.edu
NNTP-Posting-Date: Fri, 18 Apr 2003 15:27:42 +0000 (UTC)
User-Agent: Gnus/5.090006 (Oort Gnus v0.06) Emacs/20.7
 (i386-debian-linux-gnu)
Cancel-Lock: sha1:0YivJxDNRpmhc4gGyEwmgWqPL5o=