NOMBRE

perlutil - Utilidades incluidas en la distribución de Perl

DESCRIPCIÓN

Además del intérprete de Perl, la distribución de Perl incluye varias utilidades que se instalan en el sistema; algunas de ellas se usan durante el proceso de instalación de la distribución. Este documento contiene una descripción de las utilidades y referencias a la documentación de cada módulo (si existe).

LISTA DE UTILIDADES

Documentación

perldoc

Como ya sabe, la interfaz principal de la documentación de Perl es perldoc. perldoc extrae y aplica formato a la documentación de cualquier archivo del directorio actual, cualquier módulo Perl instalado en el sistema o cualquiera de las páginas de documentación estándar, como ésta. Para obtener información sobre cualquiera de las utilidades descritas en este documento, use perldoc <nombre>.

pod2man y pod2text

Cuando se ejecuta desde un terminal, normalmente perldoc llama a pod2man para convertir el formato POD (Plain Old Documentation; consulte perlpod para ver una descripción) en una página de manual, y después ejecuta man para mostrarla; si man no está disponible, se usa pod2text y el resultado se canaliza a través de su paginador favorito.

pod2html y pod2latex

Hay otros dos conversores: pod2html genera páginas HTML a partir de POD y pod2latex genera archivos LaTeX.

pod2usage

Si sólo quiere saber cómo se usan las utilidades aquí descritas, pod2usage solo extraerá la sección "USAGE" (USO); algunas de estas utilidades llamarán automáticamente a pod2usage si las llama con el modificador -help.

podselect

pod2usage es un caso especial de podselect, una utilidad que permite extraer secciones con nombre de documentos escritos en formato POD. Por ejemplo, a diferencia de las utilidades que tienen secciones "USAGE", los módulos Perl generalmente tienen secciones "SYNOPSIS" (SINOPSIS): podselect -s "SYNOPSIS" ... extrae la sección correspondiente de un archivo especificado.

podchecker

Al redactar documentación POD puede usar la utilidad podchecker para detectar errores de marcas POD.

splain

splain es una interfaz de perldiag; si le pasa un mensaje de error mostrará una descripción más completa.

roffitall

La utilidad roffitall no se instala en el sistema, pero puede encontrarla en el directorio pod/ del kit de código fuente de Perl. Esta utilidad convierte toda la documentación de la distribución al formato *roff y a partir de esto genera código fuente PostScript o un archivo de texto.

Conversores

Los tres filtros de conversión siguientes generan código Perl:

a2p

a2p convierte scripts awk en programas Perl; por ejemplo, si ejecuta a2p -F: sobre el sencillo script awk {print $2}, generará un programa Perl basado en el código siguiente:

while (<>) {
    ($Fld1,$Fld2) = split(/[:\n]/, $_, -1);
    print $Fld2;
}
s2p y psed

De manera similar, s2p convierte scripts sed en programas Perl. Si se ejecuta s2p sobre s/foo/bar, generará un programa Perl basado en el código siguiente:

while (<>) {
    chomp;
    s/foo/bar/g;
    print if $imprimir;
}

Cuando se invoca como psed, se comporta como una implementación de sed escrita en Perl.

find2perl

Por último, find2perl traduce comandos find en sus equivalentes Perl, que usan el módulo File::Find. Por ejemplo, find2perl . -user root -perm 4000 -print genera la siguiente subrutina de devolución de llamada para File::Find:

sub wanted {
    my ($dev,$ino,$mode,$nlink,$uid,$gid);
    (($dev,$ino,$mode,$nlink,$uid,$gid) = lstat($_)) &&
    $uid == $uid{'root'}) &&
    (($mode & 0777) == 04000);
    print("$name\n");
}

Además de estos filtros para traducir otros lenguajes, la utilidad pl2pm permite convertir bibliotecas de código Perl 4 antiguo en módulos de Perl 5 modernos.

Administración

config_data

Permite consultar o modificar la configuración de módulos Perl que usan archivos de configuración basados en Module::Build para características y datos de configuración.

libnetcfg

Para mostrar y modificar la configuración de libnet, ejecute el comando libnetcfg.

perlivp

El programa perlivp se configura en tiempo de compilación del código fuente de Perl para comprobar la versión de Perl con la que se generó. Se puede usar después de ejecutar make install (o el procedimiento equivalente para su plataforma) para comprobar que perl y sus bibliotecas se han instalado correctamente.

Desarrollo

A continuación se describe un conjunto de utilidades que ayudan a desarrollar programas Perl y, en particular, a extender Perl con código C.

perlbug

La manera recomendada de notificar errores del intérprete perl o de cualquier módulo de la biblioteca estándar a sus programadores es usar perlbug; pero antes de usar perlbug debe leer con atención su documentación.

perlthanks

Este programa proporciona una manera sencilla de enviar un mensaje de agradecimiento a las personas que se encargan de desarrollar y mantener perl. No es más que perlbug instalado con otro nombre.

h2ph

Mucho antes de que existiera en Perl el sistema XS para conectar bibliotecas C, los programadores tenían que leer los archivos de encabezado de C para obtener las constantes de biblioteca. Es posible que se encuentre código en el que se usa require 'syscall.ph' o algo similar; para crear el archivo .ph se debe ejecutar h2ph en el archivo .h correspondiente. Consulte la documentación de h2ph para obtener más información sobre la manera de convertir varios archivos de encabezado a la vez.

c2ph y pstruct

c2ph y pstruct son en realidad el mismo programa, pero se comportan de manera distinta en función de cómo se invoquen. Proporcionan otra manera de incorporar código C en Perl: convierten declaraciones de estructuras y uniones de C en código Perl. Han quedado obsoletos desde que surgió h2xs.

h2xs

h2xs convierte archivos de encabezado de C en módulos XS y agrega gran parte del código necesario para la comunicación entre bibliotecas C y módulos Perl. También resulta muy útil para crear la estructura inicial de módulos Perl puros.

enc2xs

enc2xs genera una extensión Perl para Encode a partir de archivos de asignación de caracteres Unicode (.ucm) o de archivos de codificación Tcl (.enc). enc2xs se usa internamente durante el proceso de compilación del módulo Encode; también lo puede usar para agregar su propia codificación a perl. Para ello no tiene que saber cómo funciona XS.

xsubpp

xsubpp es un compilador que permite convertir código XS de Perl en código C. Lo suelen ejecutar los archivos makefile generados por ExtUtils::MakeMaker.

xsubpp compila el código XS y genera código C; para ello, incrusta las construcciones necesarias para que las funciones C puedan manipular valores Perl y agregar el código necesario para que Perl pueda acceder a esas funciones.

prove

prove es una interfaz de línea de comandos de la funcionalidad de ejecución de pruebas de Test::Harness. Es una alternativa a make test.

corelist

Este front-end de línea de comandos de Module::CoreList permite consultar la lista de módulos incluidos en versiones específicas de perl.

Herramientas de propósito general

También se distribuyen con perl algunas herramientas de propósito general, básicamente porque forman parte de módulos incluidos en la distribución de perl.

piconv

piconv es una versión Perl de iconv, un conversor de codificaciones de caracteres de uso muy extendido en el mundo Unix. Este script se desarrolló simplemente como una demostración de tecnología para Perl 5.8.0, pero puede usar piconv para cualquier tarea para la que usaría iconv.

ptar

ptar es un programa tar escrito en código Perl puro.

ptardiff

ptardiff es una pequeña utilidad que genera las diferencias entre un archivo de almacenamiento extraído y uno sin extraer. (Tenga en cuenta que esta utilidad requiere el módulo Text::Diff para funcionar correctamente; este módulo no se distribuye con perl, pero está disponible en CPAN).

ptargrep

ptargrep es una utilidad que aplica detección de patrones al contenido de un archivo de almacenamiento tar.

shasum

Esta utilidad, que se incluye con el módulo Digest::SHA, se usa para imprimir o comprobar sumas de control SHA.

zipdetails

zipdetails muestra información sobre la estructura de registros interna de un archivo zip. No muestra detalles sobre los datos comprimidos que se encuentran almacenados en dicho archivo zip.

Instalación

Estas utilidades ayudan a administrar módulos Perl adicionales que no se incluyen en la distribución de perl.

cpan

cpan es una interfaz de línea de comandos de CPAN.pm. Permite hacer muchas cosas, como instalar módulos o distribuciones de CPAN, o simplemente obtener información sobre ellas. Es similar al modo de línea de comandos del módulo CPAN,

perl -MCPAN -e shell
cpanp

cpanp es otra interfaz de línea de comandos de CPAN (una alternativa a cpan) que usa el módulo CPANPLUS como back-end. Se puede usar de manera interactiva o imperativa.

cpan2dist

cpan2dist es una herramienta que permite crear distribuciones (o paquetes) compatibles con distintos administradores de paquetes a partir de módulos de CPAN. Existe en CPAN soporte para formatos específicos (en la familia de módulos CPANPLUS::Dist::*).

instmodsh

Esta utilidad ofrece una interfaz sencilla de ExtUtils::Installed, que permite examinar módulos instalados, validar las listas de paquetes e incluso crear un archivo de almacenamiento tar a partir de un módulo instalado.

VEA TAMBIÉN

perldoc, pod2man, perlpod, pod2html, pod2usage, podselect, podchecker, splain, perldiag, roffitall|roffitall, a2p, s2p, find2perl, File::Find, pl2pm, perlbug, h2ph, c2ph, h2xs, enc2xs, xsubpp, cpan, cpanp, cpan2dist, instmodsh, piconv, prove, corelist, ptar, ptardiff, shasum, zipdetails

TRADUCTORES

  • Joaquín Ferrero (Tech Lead)

  • Enrique Nell (Language Lead)