【发布时间】:2015-06-28 18:30:04
【问题描述】:
我有一个打开命令 echo 的 bash 脚本(set -x)。我希望以绿色文本打印回声线,但实际命令的输出是默认颜色。我可以使用 $PS4 来获得绿色,但我没有看到在每次回显后将其关闭的方法,因此结果是所有输出都变为绿色。
【问题讨论】:
-
不使用 ANSI 控制字符,您可以检查您的终端仿真器是否可以自动突出显示与特定正则表达式匹配的行(并设置
PS4以便可以唯一匹配所需的行。) -
要打印的行是什么意思?
-
@JID,当您将
set -x放入脚本中时,bash 在执行之前将每个命令打印到终端。此外,各种命令可能有一些输出,它们也会打印到终端。我想通过颜色来区分两者。 -
@chepner,有趣的想法,但我希望得到一个可跨不同终端仿真器工作的便携式解决方案。
-
我不知道你可以直接这样做。不过,您可以通过后处理轻松做到这一点。
标签: linux bash terminal-color