我想检查.todo.txt
是否为空。
如果是空的,我想在文件中添加echo,如果它已经有内容,我想做其他的事情。
我试过了:
hasData()
{
echo "Hello"
}
isEmpty()
{
echo -e "$n\t$comment\t$dueD/$dueM/$dueY " >> .todo.txt
}
if [ -s $file ] ; then
hasData()
else
isEmpty()
fi
当我运行上面的代码时,我得到以下内容:
./todo.sh: line 25: syntax error near unexpected token `else'
./todo.sh: line 25: ` else'
答案 0 :(得分:3)
当我运行我的代码时,我得到以下内容./todo.sh:line 25:在意外令牌附近的语法错误' ./todo.sh:25行:否则'
您必须使用括号定义 shell函数,但它们不能调用一个。像任何其他命令一样调用shell函数:
if [ -s $file ] ; then
hasData
else
isEmpty
fi
如果你的函数接受了参数,那么你会在函数名之后列出它们 - 再次,就像任何其他命令一样。