如何将被调用脚本的 stdout 和 stderr 重定向到调用方的相同值



我有一个脚本a.sh可以做到这一点

args="--conf myconf=2"
/usr/bin/b.sh $args

当我这样做时,我再也看不到 b.sh 的stdout了。此外,我希望能够将 b.sh stdout 和 stderr 重定向到为 a.sh 指定的相同值,例如,如果用户调用 a.sh 1> out.txt 2> err.txt 我想查看 b.sh in out 的 stdout.txt以及 err 中 b.sh 的 stderr.txt

如果不确定重定向发生了什么,请将其添加到脚本b.sh

#! /bin/bash
lsof -d 0,1,2 -a -p $$
...

您可以检查 FD 的 0、1 和 2 被重定向到哪里。

最新更新