Generalidades de Perl

Generalidades

Perl es un lenguaje de programación que se usa ampliamente en el mundo de UNIX / Linux para escribir todo, desde scripts rápidos hasta programas potentes y con amplias funciones. La siguiente es una descripción de la página de manual de perlintro:

¿Qué es Perl?

Perl es un lenguaje de programación de propósito general desarrollado originalmente para la manipulación de texto y ahora se usa para una amplia gama de tareas, incluida la administración de sistemas, desarrollo web, programación de redes, desarrollo de GUI y más.

El lenguaje está destinado a ser práctico (fácil de usar, eficiente, completo) en lugar de hermoso (diminuto, elegante, mínimo). Sus características principales son que es fácil de usar, admite programación tanto procedimental como orientada a objetos (OO), tiene un potente soporte integrado para el procesamiento de texto y tiene una de las colecciones de módulos de terceros más impresionantes del mundo.

Se dan diferentes definiciones de Perl en perl, perlfaq1 y sin duda otros lugares. A partir de esto, podemos determinar que Perl es algo diferente para diferentes personas, pero que mucha gente piensa que al menos vale la pena escribir sobre él.

Historia

Perl fue creado a mediados de los 80 por Larry Wall. Su intención original era llenar la brecha entre los llamados lenguajes de "bajo nivel" como CC++, y los lenguajes de secuencias de comandos de nivel superior como awk, sed, y scripts de shell. Ha evolucionado considerablemente desde entonces, convirtiéndose en el lenguaje de facto elegido por muchos administradores de sistemas * nix y usuarios avanzados. Ha encontrado un gran atractivo en el Internet (una red basada principalmente en * nix) como el código de fondo detrás de muchos sitios en el World Wide Web. Un ejemplo notable es Slashdot.

Perl en DreamHost

Camino al intérprete de Perl

La ruta a Perl en los servidores de DreamHost se muestra a continuación. Esta ruta es estándar en los sistemas basados en * nix y la mayoría de los scripts no deberían necesitar ser modificados.

/usr/bin/perl

mod_perl Actualmente no es compatible con DreamHost. Debes usar FastCGI en vez.

Versión Perl de DreamHost

Ve los siguientes enlaces para las versiones actuales de Python.

Como con Python y PHP, puedes crear otra versión en tu directorio personal si es necesario. Sin embargo, la mayoría de los programas de Perl deberían funcionar bien con la versión instalada.

Instalación de una versión personalizada de Perl

También puedes instalar una versión personalizada de Perl con tu nombre de usuario. Consulta el siguiente artículo para obtener instrucciones:

Usando módulos de Perl

DreamHost tiene casi todos los módulos de Perl comunes instalados, así como muchos poco comunes.

Para verificar si un módulo de Perl está instalado en los servidores de DreamHost, inicia sesión en tu cuenta de shell y luego escribe lo siguiente:

[server]$ perl -MThe::Module::Name -e0

The::Module::Name es el nombre del módulo Perl que está buscando.

El comando no muestra ningún resultado cuando el módulo es encontrado. De no ser encontrado, se muestra un error.

Instalación de módulos personalizados

Puede instalar tus propios módulos en su directorio personal directamente. Sigue estas DreamHost specific instructions para instalar módulos CPAN.

Perl FastCGI

El módulo perl FCGI se instala de forma predeterminada en los servidores DreamHost.

Para probar si FastCGI está configurado y funcionando correctamente, prueba este sencillo programa "Hola mundo". Pega este texto en un archivo con el final .fcgi.

#!/usr/bin/perl

use lib qw( /home/myhome/lib/perl/5.8.4 );
use FCGI;
use Socket qw( :crlf ); # server agnostic line endings in $CRLF

my $counter = 0;
while ( FCGI::accept() >= 0 ) {
   $counter++;

   print
        "Content-Type: text/plain",
        $CRLF,
        $CRLF,
        "Hello World, in Perl FastCGI!",
        $CRLF,
        "I am process $$.",
        $CRLF,
        "I have served $counter request(s).",
        $CRLF;
 }

El $CRLF es una línea neutral del servidor que termina equivalente a "\015\012". Siempre funcionará. "\n" o incluso "\r\n" a veces no lo harán.

Si cambias la extensión de este script a .pl o .cgi para que sea manejado por CGI regular, notarás que el PID es diferente en cada solicitud, y el contador de solicitudes permanece en 1.

Debugging

DreamHost corre suexec and requires y requiere que todos los scripts cgi y los directorios en los que residen no puedan ser escritos por nadie más que por el propietario (es decir, el usuario). Esto significa que debes cambiar los permisos del script usando chmod (ve el siguiente ejemplo):

[server]$ chmod -R 755 perldir

donde perldir es el directorio en el que reside su CGI de perl.

Ver también

¿Este artículo ha respondido sus preguntas?

Última actualización el PST.

¿Aún no encuentra lo que busca?