bash - 在 bash 中,如何将 "set -x"行打印到标准输出而不是标准错误?

标签 bash

我希望在扩展命令之后和执行命令之前对每个命令进行跟踪,就像 set -x 所做的那样,但我不希望它被打印为 stderr。

我知道我可以将 stderr 重定向到 stdout,如 exec 2>&1,但这将重定向所有 stderr(并且 exec 将被打印到 stderr)。我仍然希望将实际的错误消息打印到 stderr,因此重定向所有内容并不是我想要的。

最佳答案

设置BASH_XTRACEFD

BASH_XTRACEFD=1

关于bash - 在 bash 中,如何将 "set -x"行打印到标准输出而不是标准错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68112329/

相关文章:

bash - 如何在qsub中指定错误日志文件和输出文件

bash - 使用 Bash 测试 URL 列表

bash - 使用日期创建文件名时 shell 脚本中的模糊重定向错误

bash - 什么是间接扩张? ${!var*} 是什么意思?

linux - 如何在 shell 脚本中使用 sed 或 grep 检查空白字符?

linux - 如何在没有空格的情况下打印 awk?

linux - 脚本找不到文件

bash - 无法完全关闭脚本导出中的远程SSH隧道

bash - 需要让 awk 抑制输出到 stdout

bash - 反转 gcc 输出的顺序