Короче, это делается вот так:
```
echo -e "\x1b[38;5;1m zzzzz\x1b[0m" >> file.txt
```
Значение символа экранирования (^[) равно 27. Поэтому можно получить данный символ, выполнив в python
chr(27). Получим "\x1b".
[38;5;12m COLOR[0m
[38;5;13m COLOR[0m
[38;5;14m COLOR[0m
[38;5;15m COLOR[0m
[38;5;16m COLOR[0m
[38;5;17m COLOR[0m
[38;5;18m COLOR[0m
[38;5;19m COLOR[0m
[38;5;20m COLOR[0m
[38;5;21m COLOR[0m
[38;5;22m COLOR[0m
[38;5;23m COLOR[0m
[38;5;24m COLOR[0m
[38;5;25m COLOR[0m
[38;5;26m COLOR[0m
[38;5;27m COLOR[0m
[38;5;28m COLOR[0m
[38;5;29m COLOR[0m
[38;5;30m COLOR[0m
В lagrange цвет отображается, в amfora - нет.