Bash 捕获变量中的stdout并重定向stderr

Bash 捕获变量中的stdout并重定向stderr,bash,Bash,这不起作用: result=`./myscript.sh $@` 2> /dev/null Asstderr仍显示在我的屏幕上。我猜作业分组不正确,但我真的不知道如何同时执行这两个操作(尤其是在不创建临时文件的情况下)。试试: result=`./myscript.sh $@ 2> /dev/null` 尝试: 您可以使用: result=$(./myscript.sh "$@" 2> /dev/null) 您可以使用: result=$(./myscript.sh "$

这不起作用:

result=`./myscript.sh $@` 2> /dev/null
As
stderr
仍显示在我的屏幕上。我猜作业分组不正确,但我真的不知道如何同时执行这两个操作(尤其是在不创建临时文件的情况下)。

试试:

result=`./myscript.sh $@ 2> /dev/null`
尝试:

您可以使用:

result=$(./myscript.sh "$@" 2> /dev/null)
您可以使用:

result=$(./myscript.sh "$@" 2> /dev/null)