我被要求用bash编写一个简单的脚本,该脚本将在if语句中使用。它使用一个参数,并根据此脚本中的计算结果,传递是否通过。它应该类似于在if语句中返回true或false的函数。
它会这样使用:
if ./script_name argument ; then
...
fi
在上述脚本中,我尝试使用return 0
或return 1
创建一个需要进行计算的函数,但我从未获得令人满意的结果-尽管计算正确,但始终执行if语句。然后我切换为“ true”或“ false”,但结果相同。
#!/bin/bash
function function_name () {
# calculations...
if [ something ]
then
true
else
false
fi
}
以某种方式使用以上脚本:
if ./script_name argument; then echo "True"; else echo "False"; fi
无论参数如何,始终显示True。没有错误。计算是正确的-在没有return
的情况下进行了尝试,但在终端中插入了echo 0 / echo 1
,并相应地将它们都打印到了参数上。