foo.sh:
bar() {
return 1;
}
test.sh
#!/bin/bash
if /path/to/foo.sh bar; then
echo "success"
else
echo "fail"
fi
它总会回归"成功"无论bar()的返回值如何。我怎样才能使它按预期工作?
答案 0 :(得分:4)
foo.sh
没有调用该函数;它只是定义它。您需要首先获取文件,然后像其他任何函数一样处理bar
。
. foo.sh
if bar; then
echo success
else
echo fail
fi