En bash, puedo hacer que una condición de prueba utilice && y / o || en lugar de un bloque if / elif / else.
Cuando corresponde, yo uso tienden a usar && y / o || en lugar de construir un bloque if. ¿Hay alguna ventaja en el mundo real para una construcción sobre la otra?
Considere los siguientes ejemplos:
1)
[[ -f /shared_disk/backups/daily.tar.bz2 ]] && echo "the coast is clear" || echo "run the dump"
2)
if [[ -f /shared_disk/backups/daily.tar.bz2 ]]; then
echo "the coast is clear"
else
echo "run the dump"
fi