简单的 Bash If 语句

简单的 Bash If 语句

我正在尝试为目录编写一个简单的测试,但一直遇到无法解决的问题。

 prompt> if [ -d "./mydir" ] then echo "yes"; fi
 -bash: syntax error near unexpected token 'fi'

我尝试了各种引号、分号、换行符等。
但总是遇到这个语法错误。

你能解释一下我在这里做错了什么吗?

答案1

需要用分号来分隔条件命令和then关键字:

if [ -d dir ]; then echo yes; else echo no; fi
# ...........^

当然,你可以使用换行符代替分号

或者使用条件运算符

[ -d dir ] && echo yes

相关内容