Mostrando entradas con la etiqueta Shell Script. Mostrar todas las entradas
Mostrando entradas con la etiqueta Shell Script. Mostrar todas las entradas

martes, 4 de junio de 2013

Shell Script. Campana y se acabó... (por ahora)

Buenas a todos.

Hoy hemos tenido el examen final de Shell Script. Personalmente he terminado contento, muy contento realmente, ya que era para mi la parte a la que tenía más miedo al no tener ninguna experiencia. Realmente he pasado del Houston tenemos un problema como decía hace unos post, a un estado de gracia con "el código". No digo que sea un gurú, pero los resultados están ahí. Es por esa razón que digo "Campana y se acabó... (por ahora)" ya que aunque tomaré unos días de relax con este tema, no quiero dejarlo ahora que empiezo a disfrutar.

El secreto está en la práctica y eso lo tenía claro desde el primer momento. Después de muchas horas practicando se consiguen los resultados y aunque cada uno elijamos una ruta diferente, siempre que la meta sea la misma, daremos el resultado como válido.

El examen ha sido una fusión de bucles y manejo de cadenas. El ejercicio estrella y secreto a voces del examen ha sido el rombo. También hemos tenido otros ejercicios basándose en ejercicios previamente realizados en clase aunque con modificaciones lógicas para obligarnos a pensar nuevas soluciones.

Ahora a disfrutar del momento. Mañana a empezar a ver el código de Tron del cual estoy seguro no entenderé de la misa la mitad. ;-)

Un saludo para todos.



martes, 21 de mayo de 2013

Cuadros en Shell Script

Buenas de nuevo.

En la jornada de hoy se nos ha planteado un nuevo ejercicio. Realmente este ejercicio ya lo habíamos realizado mientras hacíamos prácticas de ficheros Batch y si la idea la tenías clara en aquella ocasión, en esta no había muchos más problemas. Realmente se basa en tener el concepto claro y saber utilizar correctamente los comandos que vamos conociendo.

El ejercicio en cuestión era realizar un cuadro con unas medidas previamente introducidas desde la línea de comandos. Por ejemplo:
 $ ./fichero.sh 5
Nos tendría que mostrar algo similar a:
*****
*    *
*    *
*    *
*****

Una vez realizado este primer ejercicio lo hemos "mejorado" añadiéndole la funcionalidad de que analice si existen parámetros. Si el usuario no los introduce, el script lo solicita y "pinta" el cuadro. Si el usuario lo introduce desde la línea de comandos lo realiza igualmente.

La tercera mejora del script ha consistido en sustituir los asteriscos con los que dibujaba los bordes del cuadro por código ASCII extendido con lo que se consigue un resultado visual mejorado. Lógicamente ya hay que trabajar con más opciones pues en lugar de usar  un solo "tipo de ladrillo" para construir la pared, ahora ya tenemos 6 tipos diferentes.

En la cuarta mejora, le hemos añadido la funcionalidad del color. Ahora podemos elegir entre cuatro colores diferentes para dibujar nuestro cuadro.

La quinta y última mejora, ha sido añadirle una textura interior y otra exterior para darle una sensación de profundidad. En esta ocasión también ha sido necesario aumentar el "número de ladrillos" con los que trabajar, al igual que incrementar los contadores y jugar con nuevos desplazamientos.

Hoy me lo he pasado realmente bien, pues era capaz de "ver" rápidamente el código necesario en mi cabeza y los errores que recibía en pantalla cuando estaba realizando los ficheros, eran corregidos sin problemas.

Os dejo con un vídeo para que veáis funcionando los cinco ficheros en cuestión.

Espero que os guste. 

Un saludo para todos.

viernes, 17 de mayo de 2013

Ejercicio de Shell Script

Buenas.

Aunque sigo teniendo algunos problemas con los Shell Script, empiezo a cogerles el tranquillo. Como bien decía en el último post, es cuestión de práctica y si con ella consigues buenos resultados, mejor que mejor. Este ejercicio ha sido bastante fácil a mi entender. Mientras estaba comiendo, mi mente no paraba de darle vueltas al problema en cuestión y ha sido sentarme delante del ordenador y prácticamente he tenido que realizar pocas modificaciones al esquema que tenía en mente. 

Espero que os guste.


lunes, 13 de mayo de 2013

Houston, tenemos un problema...

Buenas a todos.

Con este título dejo claro como me siento al día de hoy con el nuevo tema de sistemas operativos. Los Shell Script de Linux están ahora mismo corriendo en otra galaxia y me encuentro, con que tonterías que me resultan fáciles de hacer en un fichero batch, quedan ahora mismo fuera de mi alcance. Lógicamente todo es cuestión de práctica, práctica y práctica pero para ello se requiere tiempo, tiempo y tiempo. Y aunque suene a tópico, actualmente carezco de él.

Pequeñas tonterías que me van quedando. Todo fichero Shell Script empieza de la misma forma. 

#!/bin/bash 

Bucles "while".
Mientas se cumpla la condición, se realizará la orden. El esquema sería el siguiente

while _condicion_
do
   _ordenes_a_realizar
done

La orden para iniciar las ordenes será do y terminará con done. Con la siguiente captura podéis observar el uso de este tipo de bucle.


Si en este ejemplo utilizamos parámetros para meter los valores, el funcionamiento será prácticamente el mismo que se utilizaba en ficheros batch. Una vez que tenemos los parámetros, se los asignamos a las variables. Vamos con el ejemplo.


Las variables las definiremos con el comando read  y las podemos comparar con el comando case. Para finalizar dicho comando utilizaremos el mismo comando escrito al contrario esac.


No son los únicos comandos que nos han enseñado, pero por ahora no me atrevo a hablar más de ellos  por desconocimiento principalmente.

Próximamente, más y espero que mejor, porque peor será difícil. :-(