Você pode combinar os dois:
printf %b == '\e[1m' '\e[38;2;255;95;255m' FOO '\e[m' == '\n'
O primeiro define o atributo negrito, o segundo define a cor.
Você deve verificar se o emulador de terminal realmente suporta caracteres em negrito (e não está emulando-os com vídeo colorido / reverso ou apenas ignorá-los em alguns modos, como o linux vt) e habilitá-lo se estiver desabilitado. A maioria dos emuladores de terminal que trabalham com o X11 não precisam de configuração extra para isso.
para xterm
você pode ter que definir *colorBDMode: false
em .Xresources
se ele foi desativado de alguma forma. O mesmo vale para os caracteres itálicos e sublinhados: *colorITMode: false
, *colorBLMode: false
.