¿Puede colorear líneas específicas que se agrupan de un archivo?

Ejecuto un CRONTAB semanal que recopila información de hardware de más de 40 servidores remotos y crea un archivo de registro semanal en nuestro servidor de informes en la oficina en casa. Tengo un script que ejecuto contra este archivo semanal para mostrar solo líneas de estado específicas en mi pantalla.

#!/bin/sh

# store newest filename to variable
DD_FILE="$(ls -t /home/user/ddinfo/|head -1)"

# List the site name, disk ID (virtual & physical), Status and State of each ID, Failure Prediction for each physical disk, and the site divider
grep -w 'Site\|^ID\|^State\|^Status\|^Failure Predicted\|^##' /home/user/ddinfo/$DD_FILE
echo "/home/user/ddinfo/"$DD_FILE
exit 0

Esta es una salida de muestra:

Accessing Site: site01
ID                            : 0
Status                        : Ok
State                         : Ready
ID                              : 0:0:0
Status                          : Ok
State                           : Online
Failure Predicted               : No
ID                              : 0:0:1
Status                          : Ok
State                           : Online
Failure Predicted               : No
################################################
Accessing Site: site02
ID                            : 0
Status                        : Ok
State                         : Ready
ID                              : 0:0:0
Status                          : Non-Critical
State                           : Online
Failure Predicted               : Yes
ID                              : 0:0:1
Status                          : Ok
State                           : Online
Failure Predicted               : No
################################################

¿Hay alguna forma de cat / grep / sed / awk / perl / this output para que las líneas que terminan conCritical oYes, colorearse?

Respuestas a la pregunta(5)

Su respuesta a la pregunta