elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Únete al Grupo Steam elhacker.NET


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  Variables de entorno (Y un guiño a perl)
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Variables de entorno (Y un guiño a perl)  (Leído 3,877 veces)
@synthesize
Wiki

Desconectado Desconectado

Mensajes: 640


Another Brick in the Wall


Ver Perfil WWW
Variables de entorno (Y un guiño a perl)
« en: 11 Julio 2010, 06:32 am »

(Extraído de mi blog)

A Bash, lo conocemos la mayoría de los usuarios de GNU/Linux. Podéis repasar algunos de los comandos básicos para pasar el rato con este inseparable amigo.

Sobre Perl, decir que es un lenguaje de Scripting, multiparadigma, bastante parecido a C. Mas info, aquí.

Voy a explicar como "fabricar" nuestros propios comandos. Estas técnicas, son muy usadas en el oscuro mundo de la programación (Hace poco, leía en un libro como practican un desbordamiento de buffer en un programa en C, con la ayuda de Perl)

Aquí solo voy a explicar como añadir variables de entorno, suponiendo claro, que estáis bajo GNU/Linux.

La forma de añadir variables al entorno bash, es la siguiente:

    export NOMBRE_VARIABLE=Dato

Podemos usar el comando env para ver todas las variables de entorno del sistema. Al ser una lista, generalmente, bastante larga, recomiendo direccionar el flujo de datos a un archivo.

    env > /home/serch/Escritorio/env1.txt

(Sustituir mi usuario por el vuestro, o la ruta por la que queráis).

Ahora, vamos a proceder a guardar nuestra primera variable de entorno, la cual, al ser llamada, mostrará una cadena.

    export VAR1=Hi_world

Para llamar a nuestra variable, usamos el comando echo.

    echo $VAR1

Lo que nos devolverá lo siguiente:

    serch@serch-server:~$ echo $VAR1
    Hi_world

También podemos guardar variables de entorno como comandos. Por ejemplo, para ejecutar el comando ps -aux, podemos hacer:

    export VAR2="ps -aux"

Observamos que para guardar comandos, necesitamos las comillas. Para llamar a esta variable, no nos hace falta echo, basta solo con invocarla.

    serch@serch-server:~$ $VAR2
    Warning: bad ps syntax, perhaps a bogus '-'? See http://procps.sf.net/faq.html
    USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
    root 1 0.0 0.0 2800 1644 ? Ss 04:54 0:00 /sbin/init
    root 2 0.0 0.0 0 0 ? S 04:54 0:00 [kthreadd]
    ...


(He acortado la línea USER PID.. para poder mostrarla en 1 sola línea, y no he imprimido, obviamente, toda la lista de procesos).

Podríamos usar también una redirección de flujo para nuestra variable $VAR2, con lo que nos enviaría todos los datos al archivo que deseemos. (Ahora imaginad el buen uso que le podéis dar a las variables de entorno, sobretodo si os conectáis vía shh desde un dispositivo móvil, y no os apetece escribir comandos largos desde un mini-teclado)

Ahora vamos a crear una variable de entorno usando perl. Dentro de Perl tenemos la orden print, que para los que estéis dentro del mundo de la programación, sabréis bien lo que hace.

Para empezar, ejecutamos el siguiente comando

    perl -e 'print "Hola";'

Como vemos, nos muestra la cadena "Hola". Podemos indicar que una cadena se muestre X veces, ejecutando lo siguiente:

    perl -e 'print "Hola" x 20;'

Esta es una buena introducción a la base del Scripting, añadiendo variables de entorno y haciendo nuestros primeros pasos en Perl. En próximas entregas, mas y mejor.


En línea

eduardogotti

Desconectado Desconectado

Mensajes: 1



Ver Perfil
Re: Variables de entorno (Y un guiño a perl)
« Respuesta #1 en: 11 Julio 2010, 22:33 pm »

Muy buena la info, llevo bastante tiempo programando en python y creo que ya es hora de meterme con perl!


En línea

Imagine all the people living life in peace..!
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines