miércoles, 23 de abril de 2008

Ejercicio 2

El siguiente ejercicio, cuenta el número de líneas que no están en blanco en un fichero de texto y las calcula para luego guardar ese valor en un fichero de nombre igual al de entrada al programa, pero con la extensión .lc

Así, el programa podría ser:


my $leyendo = "diablocojuelo.txt";
if ( ! -r $leyendo ) {

die "El fichero $leyendo no es legible\n";
}

open my $fh, "<", $leyendo

or die "No puedo abrir el fichero $leyendo por $!\n";

open my $fh_out, ">", "$leyendo.lc";

$contador=0;

while (<$fh>) {
chop; chop;

$contador++ if $_;
}

print $fh_out $contador;
close $fh;

close $fh_out;

De hecho, la lectura del fichero de entrada podría hacerse desde la línea de comandos, poniendo el nombre como argumento, y así no tener que abrir ningún fichero de entrada, pero entonces, ¿cómo acceder al nombre de ese fichero? supongo que una de las variables $algo.

No hay comentarios: