bash - 如何写一个带颜色的文本文件

标签 bash

我正在尝试根据输出编写具有两种颜色的文本文件。我使用 echo -e 命令,就像在控制台中使用颜色打印时一样,如下所示:

RETURNED=$?
if [ $RETURNED == 0 ]
   then
      echo -e "\e[1;32mffmpeg -t $DURACION -f x11grab -s $RESOLUCION -r ${FPS[j]} -b:v $BR -i :0.0 -y $NOMBRE\e[0m" >> file.txt

fi

想法是:如果命令有效,则写一条绿线,否则使用红色。但是,我在文本文件中没有看到任何彩色线条。

最佳答案

您是否尝试过 less -R file.txt?这应该会显示颜色(至少对我有用)。

如果你想要非 shell 应用程序支持的颜色编码,你最好的选择可能是输出 HTML,例如:

printf '<code style="color: %s;">%s</code>' "green" "ffmpeg -t $DURACION -f x11grab -s $RESOLUCION -r ${FPS[j]} -b:v $BR -i :0.0 -y $NOMBRE" >> file.html

关于bash - 如何写一个带颜色的文本文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22380733/

相关文章:

linux - 使用 SFTP 使用 PERL/CGI.pm 将图像从 HTML 形式传输到远程 Linux 服务器

perl - 用于从文件中提取特定行的最快/最简洁的 bash 单行代码

bash - 从 URL 列表下载并输出到相关目录

linux - 使用 Groovy 和 SED 命令用变量替换字符串

linux - 在 linux 中不使用 shell 更改目录?

bash - 在 Bash 中获取配置文件的最佳实践

linux - shell 脚本 - 验证 sha256sum

mysql - CentOS 在 MySQL 服务停止时重新启动的脚本

linux - bash shell 中的管道和重定向

linux - 我愚蠢地运行了 "chmod 400 chmod",现在它似乎永远坏掉了