Bash: Uso de la estructura de control if-then

Para realizar esta prueba, doy por hecho que ya sabes algunos comandos basicos de la shell y lo basico de ubuntu linux, pero aun asi vamos a realizar esta prueba paso por paso y espero que no te atores con ninguno, empecemos; estando en el escritorio:

  1. Abre una terminal: presiona ALT+F2, escribe gnome-terminal, pulsa ENTER.
  2. Crea un nuevo archivo: escribe touch script4.sh, pulsa ENTER.
  3. Abre el archivo recien creado con el editor nano: escribe nano script4.sh, pulsa ENTER.
  4. Escribe el siguiente codigo: (en el codigo se explica lo que hace cada cosa):
    #!/bin/bash
    #Ejemplo #4: Script que muestra como utilizar la estructura de control if-then
    #Author: Gonzalo Silverio   gonzasilve@gmail.com
    #Archivo: script4.sh
    #Si el nombre juan esta en el archivo nombres.txt 
    #devolvera true. El comando se evalua a falso o verdadero.
    #verdadero =devolvio un resultado, falso = no devolvio nada
     if grep juan nombres.txt
       then
         echo 'El nombre juan ESTA en la lista de nombres'
     fi
    echo
    echo ---------Fin del script.-------------
    
  5. Guarda los cambios: presiona CTRL+O (O, no cero), te pedira el nombre del archivo, pulsa ENTER.
  6. Cierra el editor nano: presiona CTRL+X.
  7. Da permiso de ejecucion al archivo: escribe chmod +x script4.sh, pulsa ENTER.
  8. Ejecuta el script: escribe sh script4.sh

La sentencia if evalua a falso o verdadero la ejecucion de un comando. Observe que la palabra then debe ir en la siguiente linea (no puede ir adelante del comando a evaluarse), por que sino marca error de sintaxis. A continuacion pongo una imagen donde se realizan algunos pasos anteriores y por supuesto; se muestra la ejecucion del script:

Ejecucion 1 del script4 para Bash

Ejecucion 1 del script4 para Bash


Como se puede observar el comando grep informa al usuario que el archivo nombres.txt no existe. Ahora muestro otra imagen:
Ejecucion 2 de script4 para Bash

Ejecucion 2 de script4 para Bash


Como se puede ver en la imagen hemos creado el archivo nombres.txt y le agregue varios nombres (gonza, javier,itzel), pero no el de juan y ejecutamos el archivo y vemos que no entra al if y por tanto no se muestra nada (grep ya no manda msg).

A continuacion le agregamos otros dos nombres (juan y monica) y vemos que ahora si entra al if y muestra la unica instruccion dentro del if (avisa que el nombre juan si esta).

nota 1: Si no tienes nano puedes instalarlo con el comando sudo apt-get install nano
nota 2: Otra forma de ejecutar el script es escribir ./script4.sh
nota 3: Recuerda que todas las lineas del script que empiezan con # (gatito) son comentarios; a excepcion de la primera, asi que puedes omitirlas y no escribirlas.

Bueno eso es todo y pues si tienes dudas, te sirvio el ejemplo o quieres decir algo puedes dejar tu comentario que con gusto lo leere y si es apropiado te contesto. Hasta pronto.

Anuncios

Acerca de gonzasilve
Freelance Web Developer.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: