0

我有这样的管道:

VAR=`command1 | command2 | etc...`

我希望,如果管道成功完成,输出将保存在 中VAR,否则,如果管道在管道的任何点失败,则将错误发送到命令。该命令然后以某种格式将错误写入某个文件。类似的东西(但这不起作用):

VAR=`{ command1 | command2 | etc... ; } 2> err_command`

我尝试过其他组合:

|& err_command
2>&1 | err_command

但是它们不起作用,我不知道为什么。

4

1 回答 1

3

尝试使用进程替换。

VAR=`{ command1 | command2 | etc... ; } 2> >(err_command)`
于 2013-04-16T09:50:30.093 回答