所有
在我的shell脚本开始时,我设置了一个名为filespresent="false"
此变量充当一个标志,以便稍后在我的shell脚本日志中指示它是否找到要通过SQLLoader处理的文件
问题是我的if语句不起作用,它给出了以下错误
[false:not found
这是我的代码
if ["$filespresent" == "false"]
then
echo ">>>No CSV files in : " $inbox " folder, skipped SQLLoader" >> script.log
fi
我在这里检查了字符串比较教程,也许Solaris与Linux不同? http://www.tech-recipes.com/rx/209/bournebash-shell-scripts-string-comparison/
答案 0 :(得分:2)
您需要[
和]
周围的空格。说:
if [ "$filespresent" == "false" ]
[
是命令。说["$filespresent"
会导致shell将其解释为一个令牌而不是命令。
==
运算符不在sh
中,而是使用=
代替:
if [ "$filespresent" = "false" ]