Este es el sitio no oficial del LUGRO (Linux User Groups Rosario) de la ciudad de Rosario, Argentina. El twitter es: https://twitter.com/lugro_no_oficia y el sitio en identi.ca es: https://urmf.net/lugro_no
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
;;
--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.
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
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.
Suscribirse a:
Entradas (Atom)
