RE: Leer dos líneas a la vez

Ernesto Hernandez-Novich emhn at telcel.net.ve
Fri Feb 1 18:50:40 CST 2002


On Fri, 1 Feb 2002, Jose Rey wrote:
> Si solo quieres hacer join de las líneas impares y pares:
>
> while(<>) {
>    chomp;
>    print $_ . <>;
> }

Partiendo de la premisa de José Luis y eliminado el bug. El archivo debe
tener un número par de líneas, por supuesto.

perl -pe 'chomp; $_ .= " " . <> if ($. % 2)' archivo

Agregas -i para editar "in situ".

Ahora, elucubrando en lo profundo de mi cochambrosa mente

while ($_ = <> . <>) {
  s/\n/ /;
  print;
}

Funciona y se ve diabólico :-) Caveat emptor: funciona con <ARCHIVO>
siempre, y con <> funciona siempre y cuando la redirección de entrada
en la línea de comando sea tipo

hack.pl < archivo

porque con

hack.pl archivo

va a intentar dos lecturas de STDIN y se queda "esperando".

El que diga que Perl no es artístico nunca ha programado por pura
diversión. Y sí, yo sé que hay ayuda para gente como yo... pero nadie me
atiende <g>
-- 
Ernesto Hernández-Novich - Running Linux 2.4.16 i686 - Unix: Live free or die!
-----BEGIN GEEK CODE BLOCK-----
Version: 3.1
GCS d+(-) s+: a C+++$ UBLAVHIOSC++++$ P++++$ L+++$ E- W+ N++ ?o ?K w--- O- M- V
PS+ PE Y+ PGP>++ t+ 5 X+ R* tv+ b++ DI+++$ D++ G>++ e++ h+ r+ y++
-----END GEEK CODE BLOCK-----

------------------------------------------------------------------------
Enviar e-mail a <majordomo at pm.org> colocando en el cuerpo:
"UNSUBSCRIBE caracas-pm-list" para desuscribirse.
"INFO caracas-pm-list" para conocer las reglas de etiqueta.
------------------------------------------------------------------------



More information about the caracas-pm mailing list