En un aviso de Bash (variable PS1), estoy llamando a una función para agregar texto potencialmente a la solicitud: export PS1="\u@\h \$(my_function) \$ "
Sin embargo, la función en el indicador contiene códigos de color ANSI que cambian en función de la salida de la función (a veces roja, a veces verde). Agregar " \[
" a la variable PS1 debería escapar de esos códigos como no imprimibles, pero si hago un echo
en la función, " \[
" se imprime literalmente en el indicador.
¿Cómo puedo escapar de estos códigos de color ANSI desde una función para usar en un indicador de bash?
echo -e "\001\e[31m\002RED"
Funciona como se esperaba. ¡Gracias!