lunes, 9 de septiembre de 2013

Comandos de entrada y salida de datos en Perl


En cualquier lenguaje de programación y Perl no es menos, existen una serie de comandos para la entrada y salida de datos, es muy básico, la entrada de datos como su propio nombre indica nos permite agregar datos al programa para realizar una determinada acción, es decir, si tienes un programa que suma dos números, primero ingresas un número y luego el otro, y esto te puede permitir realizar una acción determinada como sumarlos, restarlos, multiplicarlos, ... y finalmente obtener una salida con el resultado total.

Salida de datos - print

Para la salida de datos se utiliza el comando print seguido de la variable o la cadena de texto.

Ejemplo:

#Salida de datos
print "Hola Mundo \n";

Esto lo vimos anteriormente, excepto el salto de línea que se indica con "\n", a continuación puedes ver los indicadores más importantes que podrás usar para la salida de datos ...

\nNueva línea.
\tTabulacíon.
\rRetorno de carro.
\fNueva hoja (formfeed).
\bEspacio atrás (backspace).
\eSecuencia de ESCape.
\uPasa a mayúscula el primer caracter de texto siguiente".
\UPasa a mayúscula todo el texto siguiente".
\lPasa a minúscula el primer caracter de texto siguiente".
\LPasa a minúscula todo el texto siguiente.
\EFin del efecto de los modificadores \U,\L.
\aEmite un pitido.
\cCCombinación de Control+Letra. En este caso Control-C.

Es interesante que practiques con el comando print e ir probando con los indicadores para ver lo que ocurre en cada caso.

Entrada de datos - STDIN | $ARGV

STDIN
Mediante STDIN se puede realizar una entrada de datos y asignar dicho valor a una variable.

Por ejemplo:

#Entrada de datos con STDIN
print "Introduce lo que quieras y pulsa enter ... ";
$entrada = <STDIN>;
print $entrada;


Veamos este código, con el comando print se imprime un mensaje que te solicita que ingreses lo que quieras, hay una variable llamada "$entrada" la cual recibe el valor <STDIN> lo cual indica que en ese punto de la ejecución del programa se realizará una entrada de datos, introduces el texto y pulsas la tecla "ENTER", finalmente nuevamente con print se muestra el valor de entrada de la variable "$entrada".

Practica introduciendo nuevos valores de entrada e imprimiendo su valor final con print.
$ARGV
$ARGV permite agregar parámetros al programa, si estás habituado al uso de la consola estarás acostumbrado a incluir parámetros, por ejemplo, introduce en la consola >>> "netstat -h", -h es un parámetro que te mostrará la sección de ayuda del programa netstat.

$ARGV funciona a modo de lista o array, es decir puede contener tantos elementos como se requieran, con la única condición que al llamarlos en la consola deberán ir separados por un espacio, esta parte puede ser algo más compleja si no has visto nada de arrays, así que tampoco te preocupes demasido si no lo entiendes de primera. Para este ejemplo puedes crear un archivo llamado "argv.pl" y le añades el siguiente código ...
 
#Entrada de datos con $ARGV
$ARGV[0];
print "El parametro 1 es ... " . $ARGV[0] . "\n";
$ARGV[1];
print "El parametro 2 es ... " . $ARGV[1] . "\n";


A continuación ejecutamos el archivo perl con dos parámetros ... >>> perl argv.pl uno dos

Tutorial de iniciación a Perl en Español

Como se puede ver en el código $ARGV[0] es el primer parámetro y $ARGV[1] el segundo, luego simplemente se imprimen sus valores en una cadena de texto concatenada, la concatenación se realiza mediante el punto ".", ésto lo veremos más adelante.

Puedes practicar creando nuevos parámetros e imprímelos con print para habituarte, ya que es de uso muy común en las aplicaciones de consola.