bash:测试另一个文件中函数的返回值

时间:2014-04-08 17:21:58

标签: bash function return-value

foo.sh:

bar() {
     return 1;
}

test.sh

#!/bin/bash
if /path/to/foo.sh bar; then
      echo "success"
else
      echo "fail"
fi

它总会回归"成功"无论bar()的返回值如何。我怎样才能使它按预期工作?

1 个答案:

答案 0 :(得分:4)

foo.sh没有调用该函数;它只是定义它。您需要首先获取文件,然后像其他任何函数一样处理bar

. foo.sh
if bar; then
    echo success
else
    echo fail
fi