🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

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

Re: Perl: $_ no coge los espacios (debe ser facilona)

#16747
From: BT BT
Date: Mon, 27 Mar 2000 00:00
56 lines
2177 bytes
J.A. Gutierrez  escribi�:
-> BT <BT < <buscando@cuenta.chula.es>>> wrote:
-> : $mi_script
-> : anda
-> : ya            <--- el fichero es "anda ya"
-> : file2.wav.mp3
-> 
-> 
-> : #!/usr/bin/per
-> : while (<*>)
-> : {
-> : 	print "$_\n";
-> : }
-> 
-> 
-> 	Eso no es que sea incorrecto del todo pero es una guarreria.

    Comenzamos bien... con lo facilito que era eso...

 
-> 	Al usar <*> estas solicitando un 'glob' (inseguro, prueba
-> 	a usarlo con perl -T), que, curiosamente, en perl se encarga
-> 	de expandirlo
-> 		/bin/csh -cf 'set nonomatch; glob *'
-> 	(si no me crees, haz un strace)
-> 	con lo que los resultados dependen del csh, de su configuracion
-> 	y de la fase de la luna.

    Eso que me cuentas no se muy bien de que va. �Pero me lo creo! Supongo
que te refieres a que es la shell (uso bash), la que espande el <*> y que
no tiene porqu� hacerlo bien.


-> 
-> 	Lo correcto es:
-> 
-> opendir(DIR,".");
-> @files = readdir(DIR);       # read file names into array
-> closedir(DIR);
-> foreach (@files) {
-> 	print "$_\n";
-> }
-> 
-> 	(usando p.e. stat() si quieres sacar solo los ficheros)

    Vaya, lo contento que estaba yo con mis 3 lineas (aunque no
funcionasen), y ahora tengo 5. Claro que estas si tiran bien. La verdad, no
recuerdo que dijesen esto en el libro de la llama (el que tengo), y siempre
lo habia hecho de la otra manera.
    Muchas gracias por la correcci�n,

              ---> BT

-- 
ejecuta lo de abajo para obtener mi e-mail:
echo "pes cad or (at) linux fan (dot) com"| sed "s/(at)/@/g " | sed "s/(dot)/\./g"|sed "s/ //g"
Technical Details
Message-ID: <l54mb8.2c.ln@king.casa.es>
Path: arc1-ca.pugleaf.net!unknown!not-for-mail
References: <nijbb8.cn.ln@king.casa.es> <8bcs2d$ijo$1@news.unizar.es>

Show Full Headers
Complete Article Headers
X-Google-Language: SPANISH,ASCII
X-Google-Thread: f86c8,8b4fdc660642da14
X-Google-Attributes: gidf86c8,public
From: BT <BT <<buscando@cuenta.chula.es>>>
Subject: Re: Perl: $_ no coge los espacios (debe ser facilona)
Date: 2000/03/27
Message-ID: <l54mb8.2c.ln@king.casa.es>
X-Deja-AN: 602732754
Content-Transfer-Encoding: 8bit
References: <nijbb8.cn.ln@king.casa.es> <8bcs2d$ijo$1@news.unizar.es>
Organization: Airtel.net
Content-Type: text/plain; charset=us-ascii
Mime-Version: 1.0
Newsgroups: es.comp.os.linux.programacion