可能重复:
unix 命令“watch”的颜色?
在我的一个程序中,我想使用彩色文本作为输出,所以我为此使用 ANSI 转义序列,例如:
echo -e '\033[34mHello World\033[0m'
它以蓝色打印“Hello World”。(实际上它是一个使用“打印”的 Python 程序,但这对问题无关紧要)
现在我想使用 bash 程序“watch”重复执行程序。但是当我使用“watch”执行与上面相同的行时,即
watch echo -e '\033[34mHello World\033[0m'
文本不是蓝色的,输出变为“-e 033[34mHello World033[0m”。所以 ANSI 转义序列不会以某种方式解码。
有没有办法让程序“watch”尊重转义序列,或者有没有替代“watch”来获得相同的效果?
如果它只适用于 Linux 就可以了,因为我只使用它。
更新:所以一种解决方案是安装一个更新版本的“watch”,它知道 --color 选项。但是有没有其他方法,也许是一个类似的程序来“观看”?(我不是那台机器的管理员。)