Aquí va otro truco útil para Shell Scripting:
[[ ... ]] en lugar de [ ... ] para comparaciones más potentes en BashCuando necesitas hacer comparaciones en un script, es mejor usar [[ ... ]] en lugar de [ ... ], ya que es más seguro y flexible.
[ ... ] (forma tradicional, menos potente)#!/bin/bash
read -p "Introduce un número: " num
if [ "$num" -gt 10 ]; then
echo "El número es mayor que 10"
fi
⚠️ Problemas:
Necesita -gt en lugar de > para números.
Puede fallar si num está vacío.
[[ ... ]] (mejor opción)#!/bin/bash
read -p "Introduce un número: " num
if [[ $num -gt 10 ]]; then
echo "El número es mayor que 10"
fi
✅ Ventajas de [[ ... ]]:
Soporta operadores lógicos (&&, ||) sin necesidad de -a o -o.
Permite comparaciones de cadenas con > y <.
No es necesario poner comillas en variables.
cadena="Hola"
if [[ $cadena == "Hola" ]]; then
echo "Las cadenas son iguales"
fi
✅ Más legible y seguro que [ "$cadena" = "Hola" ].
🔥 Conclusión: Usa [[ ... ]] para condiciones más seguras y limpias en Bash. 🚀