Ejemplo

Veamos un ejemplo (el hash %ENV contiene las variables de entorno de la ejecución del programa):

lhp@nereida:~/Lperl/src$ cat -n return.pl
 1  #!/usr/bin/perl -w
 2  use strict;
 3  use List::Util qw(max);
 4
 5  sub dictionary_order {
 6    my @ordered = sort @_;
 7    return @ordered;
 8  }
 9
10  sub maxlength {
11    max map { length } @_;
12  }
13
14  # Formatted print of a hash
15  sub fprinth {
16    my %h = @_;
17
18    my @a = &dictionary_order(keys %h);
19    my $max = maxlength(@a);
20    printf("%-${max}s => %s\n",$_,$h{$_}) for @a;
21  }
22
23  # main
24  fprinth(%ENV);

El formato %-${max}s hace que el argumento se alinee a izquierda y se expanda con blancos hasta max espacios.

Observe como los argumentos en la llamada se han puesto entre paréntesis. Al ejecutar el programa anterior obtenemos una salida similar a esta:

lhp@nereida:~/Lperl/src$ return.pl
CVSROOT          => /var/cvs
HOME             => /home/lhp
LANG             => es_US.UTF-8
LANGUAGE         => es_ES:es:en_GB:en
LESSCLOSE        => /usr/bin/lesspipe %s %s
....

Casiano Rodríguez León
Licencia de Creative Commons
Principios de Programación Imperativa, Funcional y Orientada a Objetos Una Introducción en Perl/Una Introducción a Perl
por Casiano Rodríguez León is licensed under a Creative Commons Reconocimiento 3.0 Unported License.

Permissions beyond the scope of this license may be available at http://campusvirtual.ull.es/ocw/course/view.php?id=43.
2012-06-19