我有一个返回值的函数。
但我想添加一些echo
s 以便于调试。但这会破坏结果。
例子:
function foo {
echo "In foo"
VAR="1234"
echo "Calculated item"
echo "$VAR"
}
RESULT=$(foo)
echo "RESULT=$RESULT"
我期待得到1234
.
相反,输出是:
RESULT=In foo
Calculated item
1234
解决此问题的正确方法是什么?
将调试输出重定向到标准错误:
您甚至可以创建一个专用的“调试”功能:
输出: