我的 bash 脚本上有一个复杂的命令,它会在标准输出上打印很多信息。此命令很复杂,需要一些时间才能完成,但可以正常工作。同时,我正在使用带有 tee 的管道将其写入文件以进行解析后任务。
cmd="myComplexCommand | tee /dev/fd/5"
exec 5>&1
stored_output=$(eval "${cmd}")
直到这里一切正常。
现在,我正在尝试实现 ccze 来为屏幕输出着色。通常在任何命令上使用它都很简单:
anyCommand | ccze -A
一切都以美丽的彩色方式印刷。问题是,如果我尝试将其应用于我的特定情况,在使用管道对 myComplexCommand 进行 ccze 之后,屏幕上的输出是彩色的(很好!)但它会改变存储在我想在我的帖子上解析的文件中的输出-解析任务,它不起作用。
是否有一种 Bash 方法可以在屏幕上以美观的方式使用 ccze 打印命令,同时将其存储在文件中(无需 ccze 修改)以便稍后解析?