Esta es la parte numero 5 de estos tutoriales tipo cursos para aprender como funciona bash,y para aprender a crear nuestros scripts escritos en bash
Esta entrada esta basada en que ya leíste las 4 pasadas o ya tienes algún tipo de conocimientos en scripting o programación así que si no lo has hecho adelante
En esta ocasión veremos los símbolos que comparar distintas cosas
Primero los símbolos de
Comparación de valores numéricos
Ahora estos valores los podemos usar en un script mediante if declarando una variable
Comprobación de atributos de un archivo,carpeta o fichero
Comparación de valores alfanuméricos
Variables especiales
Ahora esto usado en un script seria así como lo que vimos en la entrada pasada
#!/bin/bash
e=10000
i=0;
while [[ $e -gt $i ]] # e es mayor que i,claro y como es un valor lógico ejecuta lo siguiente
do
echo Numero $i ejecutado
let i=$i+1
done
Leer más...
Esta entrada esta basada en que ya leíste las 4 pasadas o ya tienes algún tipo de conocimientos en scripting o programación así que si no lo has hecho adelante
Parte 1
Parte 2
Parte 3
Parte 4
En esta ocasión veremos los símbolos que comparar distintas cosas
Primero los símbolos de
Comparación de valores numéricos
| Símbolo | Ejemplo | Descripción |
| -lt | e -lt c | e es menor a c |
| -le | e -le c | e es menor o igual a c |
| -eq | e -eq c | e es igual que c |
| -ge | e -ge c | e es mayor o igual que c |
| -gt | e -gt c | e es mayor que c |
| -ne | e -ne c | e no es igual que c |
Ahora estos valores los podemos usar en un script mediante if declarando una variable
Comprobación de atributos de un archivo,carpeta o fichero
| Símbolo | Ejemplo | Descripción |
| -d | -d archivo | Archivo existe y es un directorio |
| -e | -e archivo | Archivo existe y es cualquier tipo de archivo |
| -f | -f archivo | Archivo existe y es un fichero regular |
| -r | -r archivo | Tenemos permisos de lectura sobre el archivo |
| -s | -f archivo | Archivo existe y no esta vacio |
| -w | -w archivo | Tenemos permisos de escritura en el archivo |
| -x | -x archivo | Tenemos permisos de ejecución en el archivo o de búsqueda si fuese un directorio |
| -O | -O archivo | Somos dueños de archivo |
| -G | -G archivo | El grupo del archivo es igual al nuestro |
| -nt | archivo -nt otro | Archivo es mas reciente que el otro archivo |
| -ot | archivo -ot otro | Archivo es mas antiguo que el otro archivo |
Comparación de valores alfanuméricos
| Símbolo | Ejemplo | Descripción |
| = | ValorA = ValorB | El ValorA es igual a ValorB |
| != | ValorA != ValorB | El ValorA es desigual al ValorB |
| < | ValorA < ValorB | El ValorA es menor que el ValorB |
| > | ValorA > ValorB | El ValorA es mayor que el ValorB |
| -n | -n ValorA | Longitud de ValorA mayor a 0 |
| -z | -z ValorA | Logitud de ValorA menor a 0 |
Variables especiales
| Símbolo | Descripción |
| $$ | Numero de proceso de SHELL en el que se esta utilizando |
| $0 | Nombre de la SHELL que estamos ocupando |
| $1 a $9 | Hace referencia a n-esimo en la linea de comandos |
| $? | El código de retorno del ultimo comando ejecutado |
| $# | Numero de argumentos |
| $* | La lista de todos los argumentos |
Ahora esto usado en un script seria así como lo que vimos en la entrada pasada
#!/bin/bash
e=10000
i=0;
while [[ $e -gt $i ]] # e es mayor que i,claro y como es un valor lógico ejecuta lo siguiente
do
echo Numero $i ejecutado
let i=$i+1
done
Ahora si se entiende mejor,estos simbolos son muy usados por los programadores,scripters para otorgar valores lógicos,y ejecutar acciones o compararar distintos archivos o valores,por ejemplo este es un script para jugar un rato
#!/bin/bash
echo 'Adivina el Numero'
echo 'Una pista,es entre el 0 y el 10'
num=$(($RANDOM%10))
read numb
if [ $num = $numb ]
then
echo "Acerstate era $num"
else
echo "Error el numero era $num"
fi
Ese script no usa ningún simbolo,pero si queremos que use dejemos que la pc juegue sola :D
#!/bin/bash
echo 'Adivina el Numero'
echo 'Una pista,es entre el 0 y el 10'
num=$(($RANDOM%10))
numb=$(($RANDOM%10))
if [ $num -ne $numb ]
then
echo "Acertaste $HOSTNAME era $num"
else
echo "Error $HOSTNAME el numero era $num"
fi
xD,se va a enojar la Pc,bueno ese es un ejemplo y estos símbolos mas que nada se los dejo para que tengan una idea para que sirven cuando están en un script
