如何部分更改 bash 命令输出的颜色?

How to partially change colors of bash command output?

我想在我的脚本中部分着色任何给定 bash 命令的输出,只是为了让屏幕上显示的重要信息变得漂亮和容易。

echo 为结果着色相当容易,但我无法使用显示某些系统测量值的命令。

我们以hdparm为例。

sudo hdparm -t /dev/sda1

结果如下:

/dev/sda1:

定时缓冲磁盘读取:3.00 秒内 1284 MB = 427.93 MB/sec

我希望“427.93 MB/sec”以不同的颜色显示,比方说黄色

我该怎么做?

您可以将命令输出重定向到数组,然后以您想要的颜色回显数组项。例如:

readarray -d= arr < <(sudo hdparm -t /dev/sda1);echo -e "${arr[0]} \e[31m${arr[1]}}\e[0m"