V
e
r

l
i
s
t
a
d
o

tractatus@lapipaplena:/# _

 

if

Ejecuta uno o varios comandos dependiendo de si una condición se cumple o no. Algunos scripts de ejemplo para su uso [ver operadores]:

1.-

#!/bin/bash
read -p "Ingrese nombre del usuario: " USUARIO
if grep -e ^$USUARIO: /etc/passwd
then
echo "El usuario existe en el sistema"
else
echo "Usuario desconocido"
fi
exit 0

2.-

#!/bin/bash
if [ "$(id -u)" != "0" ]; then
echo "Solo root puede ejecutar este script."
exit 1
fi

3.-

#!/bin/bash
# Verificar si se ha entrado un argumento
if [ -z "$1" ]
then
echo "Falta el argumento después del nombre del script"
exit
fi

4.-

#!/bin/bash
# Introducir dos números diferentes e indicar
# cuál es el mayor
read -p "Introduce dos números: " A B
if [ $A -gt $B ]
then
echo $A "es el mayor"
else
echo $B "es el mayor"
fi

5.-

#!/bin/bash
#Con varias opciones [elif]
ls
echo
read -p "Cual leer: " LEER
echo
if [ -f $LEER ]
then
echo
cat $LEER
echo
elif [ -d $LEER ]
then
echo
echo "Es un directorio...."
else
echo
f_echo "¡¡NO EXISTE!!"
echo
fi

6.-

#!/bin/bash
echo "Diga si o no:"
read RESPUESTA
if [ "$RESPUESTA" = si ]; then
echo "Has escrito si"
elif [ "$RESPUESTA" = no ]; then
echo "Has escrito no"
elif [ "$RESPUESTA" = "" ]; then
echo "No has escrito nada"
else
echo "Has escrito una cosa no permitida"
fi

7.-

#!/bin/bash
# and y or como condicional
echo
if [[ -f ~/.bashrc ]] && [[ -r ~/.bashrc ]]
then
echo "Existe y se puede leer"
fi
#
if [[ 4 -lt 3 ]] || [[ 7 -eq 7 ]]
then
echo "Uno de los dos es verdadero"
fi

8.-

#!/bin/bash
# Comprobar si un directorio está vacio
DIR=~/polles
#
if [ "$(ls -A $DIR)" ]
then

echo "Contiene archivos"

else

echo "Vacio (o no existe o es un archivo)"

fi
Navegando por staredsi.eu aceptas las cookies que utilizamos en esta web. Más información: Ver política de cookies
[0] 0:bash*
1837 entradas - Acerca del Tractatus
La Pipa Plena 2018