apparemment, --color=auto n'affiche pas la couleur dans un sous-interpréteur (c-à-d. dans un pipe, une substitution de commande...).
pour que la couleur soit affichée dans un sous-interpréteur, il faut position l'option à always.
MAIS, ce n'est pas une bonne pratique de mettre/laisser des indications de formatage dans une variable dont les données seront traitées ultérieurement, car lors de ce(s) traitement(s) le formatage va en perturber la lecture.
par exemple, (cas observé récemment) le comptage du nombre de caractères, ou la réutilisation de ces données dans un autre contexte (tableur, page web...).