返回函数中的值,该函数在bash中回响
我试图创建一个bash函数,但是这个函数必须显示一些消息并返回一个值。 这是一个例子:返回函数中的值,该函数在bash中回响,bash,function,echo,return-value,Bash,Function,Echo,Return Value,我试图创建一个bash函数,但是这个函数必须显示一些消息并返回一个值。 这是一个例子: #!/bin/bash function test() { echo "Hello" return 0 } if [ $(test) ]; then echo "yes" else echo "no" fi 但是如果我做一个回音退出,我就不能捕获返回值。 有可能吗? 关于确保您可以
#!/bin/bash
function test() {
echo "Hello"
return 0
}
if [ $(test) ]; then
echo "yes"
else
echo "no"
fi
但是如果我做一个回音退出,我就不能捕获返回值。
有可能吗?
关于确保您可以:
如果
根据返回状态进行分支,并且将输出分配给变量不会影响返回状态:
如果输出=$(testFunc);然后
echo“成功:$output”
其他的
echo“失败:$output”
fi
如果需要返回值,可以从$?
变量中获取:
output=$(foo 0)
rc=$?
如果[$rc-等式0]];然后是#或`如果((rc==0))`,一个算术比较
echo“success:$output$rc”#$rc在此处始终为0
其他的
echo“失败:$rc输出”
fi
btw:为了避免意外,我不会给已经指定为内置命令的函数命名。请参阅:类型测试
、帮助测试
和帮助
是的,这只是一个示例代码,将其发布到StackOverflow中这适用于0返回(ok)或0返回(ko),但我如何捕获recurn值?