小编Avi*_*Avi的帖子

使用 exec 重定向所有后续命令的 stderr

我有一个 bash 文件,我需要将所有输出重定向到一个文件、调试日志以及终端。我需要将 stdout 和 stderr 都重定向到调试并记录脚本中的所有命令。

我不想为2>&1 | tee -a $DEBUG文件中的每个命令添加。我可以忍受| tee -a $DEBUG

我记得有一种方法可以用类似exec 2>&1.

目前我正在使用以下内容:

#!/bin/bash
DEBUGLOG=/tmp/debug
exec 2>&1
somecommand | tee -a $DEBUGLOG
somecommand2 | tee -a $DEBUGLOG
somecommand3 | tee -a $DEBUGLOG
Run Code Online (Sandbox Code Playgroud)

但它不起作用。有没有人有解决方案/可以解释原因?

bash io-redirection

53
推荐指数
2
解决办法
4万
查看次数

标签 统计

bash ×1

io-redirection ×1