Ziy*_*gov 74 syntax bash if-statement operators
我有三个变量:
VAR1="file1"
VAR2="file2"
VAR3="file3"
如何&&在if语句中使用和()运算符如下:
if [ -f $VAR1 && -f $VAR2 && -f $VAR3 ]
   then ...
fi
当我编写这段代码时,它会给出错误.什么是正确的方法?
fed*_*qui 153
因此,为了使你的表达工作,改变&&为-a将这样的伎俩.
这是正确的:
 if [ -f $VAR1 ] && [ -f $VAR2 ] && [ -f $VAR3 ]
 then  ....
或者喜欢
 if [[ -f $VAR1 && -f $VAR2 && -f $VAR3 ]]
 then  ....
甚至
 if [ -f $VAR1 -a -f $VAR2 -a -f $VAR3 ]
 then  ....
你可以在这个问题bash中找到更多的细节:if语句中的多个一元运算符和那里给出的一些参考例如test,[和[[?.
| 归档时间: | 
 | 
| 查看次数: | 181063 次 | 
| 最近记录: |