Bash脚本以彩色打印文本文件

The*_*der 3 bash text sed colors

我有一个包含三个段落的文本文件.我想使用bash脚本命令以不同的颜色显示不同的段落.第1段为红色,第2段为蓝色,第3段为青色.

我设法使用像这样的命令显示颜色的线条

echo -e '\E[32;47m Green.'; tput sgr0
Run Code Online (Sandbox Code Playgroud)

但是,我想解析我的文件并在有新段落时更改颜色.我希望得到一些提示.

Gil*_*not 5

输入/tmp/FILE:http://pastie.org/4928415

脚本:

#!/bin/bash

c=1
tput setaf $c
while read a; do
    [[ $a =~ ^$ ]] && tput setaf $((++c))
    echo "$a"
done < /tmp/FILE
tput sgr0
Run Code Online (Sandbox Code Playgroud)

输出:

在此输入图像描述