Bash es un intérprete de comandos y shell de Unix que provee funcionalidades similares al shell Bourne original. Algunos comandos básicos de Bash incluyen cd para cambiar directorios, ls para listar archivos, y echo para imprimir texto. Bash también soporta variables, condicionales como if/else, bucles como for y while, y funciones para agrupar bloques de código. GTK puede ser usado para crear interfaces gráficas desde scripts de Bash.
2. Que es Bash ??
Bourne-Again SHell (otro shell bourne)
Haciendo un juego de palabras
(born-again significa renacimiento)
Sobre el Bourne shell (sh) → que fue uno de los
primeros intérpretes importantes de Unix.
Hacia 1978 el shell Bourne era el shell distribuido con
el Unix Version 7.
Es un Interprete de comandos. no necesita compilar :D
4. ¿Qué necesito?:
● Editor de texto, gedit, vim etc..
● Comandos Basicos Unix.
● Un poco de XML
5. Comandos Basicos
$ cd → Cambiar el directorio de trabajo (change directory)
$ ls → Listar el contenido de directorios (list)
$ mkdir → Crear un directorio (make directory)
$ rmdir → Borrar un directorio (remove directory)
$ cp → Copiar un archivo o directorio en el directorio especificado (copy)
$ mv → Mover un archivo o directorio a un archivo o directorio. Se utiliza también para renombrar;
el origen y destino es un archivo (move)
$ rm → Borrar archivos o directorios (remove):
$ cat → Mostrar por pantalla el contenido de los archivos por la salida estándar.
$ find → Buscar archivos recorriendo árboles de directorios especificados por las rutas.
$ pwd → Mostrar el nombre del directorio en el que uno se encuentra situado
$chmod → Cambiar los permisos de el archivo.
$echo → Sacar por la salida standard (la pantalla) lo que se le pasa por parámetro, puede ser texto o
una variable
6. Estructura.
#!/bin/bash
#! Se conoce con el nombre de Sha Bang.
# /bin/bash Lo que vamos a usar ya sea bash o
perl (/usr/bin/perl)
# Esto es un comentario
#
comando
comando
comando
.....
24. IF
If [condición]
then
lista de comandos
else
lista de comandos2
fi
25. IF
#!/bin/bash
echo ' Adivina el valor numerico de la variable'
read A
if [ $A = 1 ]
then
echo 'Acertaste'
exit 0
fi
echo 'No acertaste'
exit
26. IF-ELSE
#!/bin/bash
echo Cual es tu Edad
read edad
if [ $edad -ge 18 ]; then
echo eres mayor de edad
else
echo eres menor de edad
fi
27. FOR
El bucle for es distinto a los de otros lenguajes de
programación. Básicamente, le permite iterar sobre una
serie de `palabras' contenidas dentro de una cadena.
28. FOR
#!/bin/bash
for i in $( ls ); do
echo item: $i
done
En la segunda línea declaramos i como la variable que recibirá los
diferentes valores contenidos en $( ls ).
'done' indica que el código que ha utilizado el valor de $i ha acabado e
$i puede tomar el nuevo valor.
29. WHILE
El bucle while ejecuta un trozo de códico si la expresión de
control es verdadera, y sólo se para cuando es falsa (o se
encuentra una interrupción explícita dentro del código en
ejecución).
31. UNTIL
El bucle until es casi idéntico al bucle loop, excepto en que el
código se ejecuta mientras la expresión de control se evalúe
como falsa.
32. UNTIL
#!/bin/bash
CONTADOR=20
until [ $CONTADOR -lt 10 ]; do
echo CONTADOR $CONTADOR
let CONTADOR-=1
done
33. FUNCIONES
Como en casi todo lenguaje de programación, puede utilizar funciones
para agrupar trozos de código de una manera más lógica, o practicar
el divino arte de la recursión.
function mi_func { mi_código }.
34. FUNCIONES
1 #!/bin/bash
2 function salir {
3 exit
4 }
5 function hola {
6 echo Hola
7 }
8 hola
9 salir
10 echo bushio
Primero se llama a la función 'hola', luego a la función 'quit', y el
programa nunca llega a la línea 10.
35. El sueño de un
SELECT programador para hacer
#!/bin/bash
menús basados en texto.
OPCIONES="Hola Salir"
select opt in $OPCIONES; do
if [ "$opt" = "Salir" ]; then
echo done Muy similar a la
exit
elif [ "$opt" = "Hola" ]; then construcción 'for', sólo que
echo Hola Mundo en vez de interar para
else
clear cada 'palabra' en
echo opción errónea
$OPCIONES, se lo pide al
fi
done usuario .