我有三个变量:
@H_404_1@VAR1="file1"
VAR2="file2"
VAR3="file3"
如何在if语句中使用和(&&)运算符如下:
@H_404_1@if [ -f $VAR1 && -f $VAR2 && -f $VAR3 ] then ... fi
所以为了使你的表达工作,改变&&对于-a会做的伎俩。
这是正确的:
@H_404_1@if [ -f $VAR1 ] && [ -f $VAR2 ] && [ -f $VAR3 ] then ....或类似物
@H_404_1@if [[ -f $VAR1 && -f $VAR2 && -f $VAR3 ]] then ....甚至
@H_404_1@if [ -f $VAR1 -a -f $VAR2 -a -f $VAR3 ] then ....你可以在这个问题bash : Multiple Unary operators in if statement中找到更多的细节和一些参考给出像What is the difference between test,[ and [[ ?。