Em um prompt bash (variável PS1), estou chamando uma função para potencialmente adicionar texto ao prompt: export PS1="\u@\h \$(my_function) \$ "
No entanto, a função no prompt contém códigos de cores ANSI que são alterados com base na saída da função (às vezes vermelho, às vezes verde). Adicionar " \[" à variável PS1 deve escapar desses códigos como não imprimíveis, mas se eu fizer um echona função, o " \[" será impresso literalmente no prompt.
Como posso escapar desses códigos de cores ANSI de uma função para uso em um prompt do bash?
echo -e "\001\e[31m\002RED"funciona como esperado. Obrigado!