script operadores logicos bash if-statement operators condition

script - operadores logicos bash



utilizando y(&&) operador en script if declaration bash (1)

Entonces, para hacer que su expresión funcione, cambiar && por -a hará el truco.

Es correcto así:

if [ -f $VAR1 ] && [ -f $VAR2 ] && [ -f $VAR3 ] then ....

o como

if [[ -f $VAR1 && -f $VAR2 && -f $VAR3 ]] then ....

o incluso

if [ -f $VAR1 -a -f $VAR2 -a -f $VAR3 ] then ....

Puede encontrar más detalles en esta pregunta bash: múltiples operadores unarios en la declaración if y algunas referencias dadas allí como ¿Cuál es la diferencia entre la prueba, [y [[? .

Tengo tres variables:

VAR1="file1" VAR2="file2" VAR3="file3"

Cómo usar y ( && ) operador en una declaración if como esta:

if [ -f $VAR1 && -f $VAR2 && -f $VAR3 ] then ... fi

Cuando escribo este código, da error. ¿Cuál es la manera correcta?