我提供了一个脚本来处理两件事,捕获标准输出/错误和返回值。我正在使用进程替换:
记录器.sh
exec > >(
cat
echo $?
) 2>&1
测试.sh
. ./logger.sh
ls abc
因为我没有名为 abc 的文件,所以我希望看到这个回显返回代码的值1
(来自echo $?
)。我读到这永远不会与进程替换一起使用。这可以转换为命名管道吗?这行得通吗?
运行如下:
bash ./test.sh
我提供了一个脚本来处理两件事,捕获标准输出/错误和返回值。我正在使用进程替换:
记录器.sh
exec > >(
cat
echo $?
) 2>&1
测试.sh
. ./logger.sh
ls abc
因为我没有名为 abc 的文件,所以我希望看到这个回显返回代码的值1
(来自echo $?
)。我读到这永远不会与进程替换一起使用。这可以转换为命名管道吗?这行得通吗?
运行如下:
bash ./test.sh