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