Shell 函数只是语句,不返回值。谁能分享在 bash 中编写返回值的函数的最佳实践吗?
假设我有一个连接两个字符串的函数:
JoinStrings() {
returnValue="$1$2"
}
如何在我的代码中重用此函数?我如何才能returnValue
回复呼叫者?我应该在这个函数调用之后将它用作全局变量吗?这会导致到处都有全局变量的许多错误...如何在 shell 中实现代码重用?
答案1
在 Unix 和 GNU 中,标准输出函数的值可以被认为是返回值。
这是使用 shell 命令扩展的示例$(...)
:
JoinStrings() {
echo "$1$2"
}
joined_strings=$(JoinStrings string1 string2)
echo string1 and string2 joined are $(JoinStrings string1 string2)
有一个return
在函数中使用的 shell 语句,它设置命令的退出代码(状态代码)。退出代码是一个小整数。