从shell脚本返回一个字符串/值

时间:2013-10-30 12:50:39

标签: bash shell

我已经读过关于Stack Overflow中函数的返回输出的qns。所有帖子都说使用echo

#!/bin/bash

 function myown()
   {
       echo "i dont need this in retval"

       echo "Need this alone in retVal"
   }

  retVal=$(myown)

  echo $retVal

O / P:  我不需要这个在retval中需要这个在retVal

预期:  在retVal中需要单独使用它

有没有办法在echo中刷新先前的输出。或者我需要解析所有回显的输出以获得我的返回值?有简单的方法吗?因为我可能有回调有用的回声和echo来返回一个值。

1 个答案:

答案 0 :(得分:4)

将输出回显到stderr进行调试:

#!/bin/bash

function myown()
{
    echo "i dont need this in retval" >&2

    echo "Need this alone in retVal"
}

retVal=$(myown)

echo "result: $retVal"

运行脚本时,您将看到

i dont need this in retval
result: Need this alone in retVal