lunes, 3 de junio de 2013

REUNIÓN DEL LUGRo, VIERNES 07, 21 HORAS


Este viernes 07 de Junio a partir de las 21 horas se llevara a cabo la reunión del Grupo De Usuarios de Software Libre de Rosario en el bar Industria Argentina (Caferata entre Urquiza y Tucuman).

Están todos invitados.

Pta: se va a definir cambiar de bar... ya que Industria Argentina se ha tornado un bar de karaoke, donde van la jovatas del PAMI a levantar jovenes apuestos... :)

jueves, 9 de mayo de 2013

El intérprete de órdenes VI


En esta entrega seguiremos con las sentencias de control del BASH, la siguiente es:

for [condición] ; do {instrucciones}; done.

Esta instrucción de control es mas similar al "for" de python o perl, que su homónimo en C/C++...

Por ejemplo:

#!/bin/bash

for VAR in `cat list.txt`; do
echo "$VAR was found in list.txt"
done

exit 0


en este caso el contenido de la variable interna del shell ($VAR) toma los valores que da la ejecución del comando "cat list.txt", aqui las comas invertidas `...` le indica al shell que debe ejecutar de manera prioritaria los comandos encerrados por estas. "exit 0" devuelve al shell padre el valor que corresponde ejecución normal, es decir que no murió el proceso por errores. Para saber esto basta con hacer "echo $?"

otro ejemplo:

hcaste@azul:~$ for i in `ls`; do echo $i; done

cd-como.txt
cdrdao.txt
Clave
Sync
de
Firefox.html

uno podría pensar que es análogo al comando "ls" de UNIX, pero no, basta comparar con la salida de ls..

cd-como.txt                  
cdrdao.txt                    
Clave Sync de Firefox.html  

El motivo se debe a que se toma como separadores de campos los espacios en blanco.

Otra sentencia de control es: while [condición]; do {instrucciones}; done
Esta es una sentencia de control por anticipación. Un ejemplo es:

#!/bin/bash

count="0"
max="10"

while [ $count != $max ]; do count=`expr $count + 1`
        echo "Ya llegue a : $count"
done

exit 0

en cambio esta sentencia de control es por pos-condición until [condición]; do {instrucciones}; done

y por último la sentencia de control "case" cuyo formato es...

case [condición]
   patron-1) lista de comandos separados por ";;"
   patron-2) idem..
esac

por ejemplo:

#!/bin/bash

case "$1" in
    --ayuda)
    echo "Uso: $0 [--ayuda] [--puerto ] [--fecha]"
    ;;
    --puerto)
    telnet $3 $2
    ;;
    --fecha)
    date
    ;;
esac
exit 0

la próxima entrega se posteará sobre funciones.

lunes, 6 de mayo de 2013

REUNIÓN DEL LUGRO, VIERNES 10, 21 Hs

Este viernes 10 de mayo a partir de las 21 horas se llevara a cabo la reunión del Grupo De Usuarios de Software Libre de Rosario en el bar Industria Argentina (Caferata entre Urquiza y Tucuman). Están todos invitados.

viernes, 3 de mayo de 2013

Estadisticas, Abril 2013


     18 Lista de tareas para colaboradores FLISOL
     11 Huayra Linux y Conectar Igualdad en el FLISOL
      9 Flisol 2013 novedades + info
      6 Actualizar Silverlight en netflix-desktop
      5 Fotos del evento
      3 Micrositios Flisol Cordoba 2013



martes, 23 de abril de 2013

REUNIÓN DEL LUGRo, VIERNES 26, 21 HORAS

Este viernes 26 de Abril a partir de las 21 horas se llevara a cabo
la reunión del Grupo De Usuarios de Software Libre de Rosario en el bar Industria Argentina (Caferata entre Urquiza y Tucuman).

Están todos invitados.

viernes, 19 de abril de 2013

El intérprete de órdenes V

Ejemplos útiles en "if..."

La vez anterior se estuvo usando la sentencia de control "if ... ; then ...; else...; fi" en esta ocasión se analizarán estos ejemplos

if [ "$user" != "gnu" ]; then
echo "Eh! fierita."
else
echo "Hola usuario de gnu !"
fi

El corchete [ expresión ] es equivalente a la función "test expresión" cuya función es evaluar lógicamente un predicado y devolver un valor lógico, en este caso el predicado es: "$user" != "gnu", se evalúa si el contenido de la variable LOCAL user no es igual a la cadena "gnu".

otro ejemplo sería:

 if [ "x$one" = "x-x" ]; then
echo "$one es -x"
else
echo "$one es not -x"
fi

que el castellano se traduce:

if (contenido de $one) es igual a  -x (suprima mensaje de error), then
diga (contenido de $one) es -x
en otro caso
diga (contenido de $one) es no -x

En este ejemplo uno se ampara ante el hecho que la variable no pueda contener valor lo que causaría que la evaluación del predicado de un mensaje de error.

if [ "$user" = "gnu" -o "$user" = "ung" ]; then
echo "Hola $user !"
else
echo "Y a vos quien te juna $user..."
fi

Aquí "-o" es un OR lógico dentro del predicado.

Los posibles operadores de predicado que reconoce la función "test" son los siguientes:

! EXPRESIÓN, negación lógica o NOT

EXPRESIÓN1 -a EXPRESIÓN2, AND lógico

EXPRESIÓN1 -o EXPRESIÓN2, OR lógico

-n STRING, da "true" si la longitud de la cadena es no nula.

-z STRING, da "true" si la longitud de la cadena es nula.

STRING1 = STRING2, da "true" si las cadenas coinciden.

STRING1 != STRING2, da "true" si las cadenas no coincide.

INTEGER1 -eq INTEGER2, da "true" si los enteros coinciden.

INTEGER1 -ge INTEGER2, idem,,, si entero1 >= entero2

INTEGER1 -gt INTEGER2, idem,,, si entero1 > entero2

INTEGER1 -le INTEGER2, idem,, si entero1 <= entero2

INTEGER1 -ne INTEGER2, idem,, si entero1 < entero2

FILE1 -ef FILE2, da "true" si los archivos tienen el mismo dispositivo es i-nodo.

FILE1 -nt FILE2, da "tuee" si el archivo1 tiene dato de modificación posterior al archivo2

FILE1 -ot FILE2, idem,, pero archivo1 anterior a archivo2

-b FILE, da "true" si el archivo apunta a un dispositivo (UNIX-like)

-c FILE, idem,, si es un dispositivo de caracteres (UNIX-like)

-d FILE, idem,, si es un directorio y existe

-e FILE, idem,, si el archivo existe

-f FILE, idem,, si el archivo existe y no es un puntero a dispositivo

-w FILE, idem,, si existe y tiene permisos de escritura

-x FILE, idem,, si tiene permisos de ejecución.

Existen otras opciones más pero son muy específicas del sistema UNIX-like

martes, 9 de abril de 2013

REUNIÓN DEL LUGRo, VIERNES 12, 21 HORAS


Este viernes 12 de Abril a partir de las 21 horas se llevara a cabo la reunión del Grupo De Usuarios de Software Libre de Rosario en el bar Industria Argentina (Caferata entre Urquiza y Tucuman).

Están todos invitados.