Hemos llegado a la cuarta temporada de de la serie Administración de sistemas GNU/Linux, con esta temporada cerraré la primera parte de esta serie que es la introducción al mundo del scripting a través de Bash, Python y Perl.
¿Por qué usar Perl?
Perl es uno de los lenguajes de programación que ofrece más ventajas cuando de se trata, sobre todo si es comparado con lenguajes como Bash. Una de las desventajas que muchos desarrolladores señalan respecto a este lenguaje, es que carece de escrito en él, sin embargo, esta desventaja no es del todo cierta ya que un código bien escrito en Perl es completamente legible y entendible, al no ser un lenguaje que impone cierto grado de disciplina en su sintaxis provoca que la responsabilidad de que un código sea leíble recaiga precisamente en el programador.
Al igual que Python, Perl es considerado una de las mejores opciones para realizar scripting y por lo tanto realizar tareas de administración de sistemas, ya que a diferencia de lenguajes de programación comúnmente utilizados como C, C++, C# o Java, ya que la solución a un problema puede ser escrita en menos líneas de código de las que se tendrían en un lenguaje de programación más convencional.
Iniciándose en Perl
La forma más sencilla de iniciarse en un nuevo lenguaje de programación es realizando el «¡Hola mundo!» y hoy no será la excepción.
#!/usr/bin/perl
print "¡Hola mundo!\n";
Se utiliza la extensión .pl para indicar que es un script de Perl.
$ vim holamundo.pl
$ chmod +x holamundo.pl
$ ./holamundo.pl
¡Hola mundo!
¡Listo! Este es tu primer script en Perl.
Sintaxis de un script
Es momento de aprender un poco de la sintaxis propia del lenguaje.
Un script en Perl, igual que en Bash y Python, debe contener como primera línea al shebang, el cual, indica qué interpretador será utilizado para ejecutar el script. En caso de que no la contenga se tiene que indicar qué intérprete es necesario a la hora de ejecutar el script.
#!/usr/bin/perl
Los comentarios son escritos iniciando con el símbolo de numeral #
, se puede emplear en cualquier parte del script, a excepción de la primera línea, que como ya mencioné, le pertenece al shebang.
#Este es mi primer comentario en un script de Perl.
Para definir una variable de tipo escalar se antepone el signo $
al identificador, además cada sentencia debe ser separada por el punto y coma ;
.
$saludo = '¡Hola mundo!';
Para imprimir se utilizan las funciones print
, printf
y sprintf
, además es posible hacerlo de varias formas.
Si se desea imprimir una cadena tal cual se encuentra entre comillas, se utilizan comillas simples.
print '¡Hola mundo!\n';
print '$saludo\n';
Salida:
¡Hola mundo!\n$saludo\n
Al utilizar comillas simples no es posible dar formato, ya que imprime la cadena de forma explícita. Para poder darle formato se puede hacer lo siguiente:
print '¡Hola mundo!'."\n";
print '$saludo',"\n";
print ('¡Hola mundo!'."\n");
Salida:
¡Hola mundo!
$saludo
¡Hola mundo!
De estas maneras sí toma en cuenta el salto de línea.
Para imprimir el contenido de la variable existen estas variantes.
print "$saludo\n";
print $saludo."\n";
print ("$saludo\n");
Salida:
¡Hola mundo!
¡Hola mundo!
¡Hola mundo!
También es posible dar formato de las siguientes formas.
print "Mi saludo es: $saludo\n";
printf "Mi saludo es: %s\n", $saludo;
$salida = sprintf "Mi saludo es: $saludo\n";
print $salida;
Salida:
Mi saludo es: ¡Hola mundo!
Mi saludo es: ¡Hola mundo!
Mi saludo es: ¡Hola mundo!
Antes de ejecutar cualquier script es necesario darle permisos de ejecución, los cuales se pueden dar con el siguiente comando.
~ $ chmod +x holamundo.pl
Nota: si no conoces este u otros comandos de Bash, te recomiendo repases las temporadas 1 y 2 de esta serie.
Finalmente lo ejecutamos de la siguiente forma:
~ $ ./holamundo.pl
Toma en cuenta que debes estar en el directorio donde se encuentra guardado el script.
En esta nota se aprendió que un script en Perl puede estar conformado solamente por un par de líneas de comandos. También se repasó la sintaxis básica que debe contener un script para poder ser ejecutado. Espero este contenido te haya sido útil y que continúes leyendo las siguientes notas de esta temporada que está iniciando. ¡Hasta pronto!