当没有“return”语句时,bash函数返回什么?

时间:2012-08-28 01:09:42

标签: bash shell return-value

bash函数的返回值是上次执行的命令的状态吗?

我写了这个测试,看起来就是这样。我只是想验证一下。显然没有人问过这个问题,教程没有提到这个问题。

测试程序:

funa() {
  echo "in funa";
  true;
};

funb() {
  echo "in funb"
  false;
};

funa && echo "funa is true";    
funb && echo "funb is true";

运行程序时的输出:

in funa
funa is true
in funb

有谁知道答案?

2 个答案:

答案 0 :(得分:5)

是。每man bash

  

Shell函数定义

     

执行时,退出状态为                 函数是执行的最后一个命令的退出状态                 身体。 (参见下面的功能。)

答案 1 :(得分:4)

您是否尝试阅读该联机帮助页?它在那里。

  

执行时,退出状态为                 函数是执行的最后一个命令的退出状态                 身体。 (参见下面的功能。)