Estoy escribiendo un script Bash que imprime algo de texto en la pantalla:
echo "Some Text"
¿Puedo formatear el texto? Me gustaría ponerlo en negrita.
bash
console
formatting
echo
JamesRat
fuente
fuente
tput smul
tput
es un gran comando con muchos comandos para muchas tareas diferentes.motd
archivo. ¿Cómo / dónde definiría las variables$bold
y$normal
en esa instancia?Para aplicar un estilo en su cadena, puede usar un comando como:
Explicación:
-e
opción significa que se interpretarán las cadenas escapadas (reducidas)Los posibles enteros son:
fuente
[0m
ofrece y esto lo explica bien\033[0m
3
- cursiva , al menos en konsoleSupongo que bash se está ejecutando en un terminal compatible con vt100 en el que el usuario no desactivó explícitamente la compatibilidad con el formateo.
Primero, active el soporte para caracteres especiales en
echo
, usando la-e
opción. Más tarde, use la secuencia de escape ansiESC[1m
, como:Más información sobre las secuencias de escape ansi, por ejemplo aquí: ascii-table.com/ansi-escape-sequences-vt-100.php
fuente
echo -e "\033[1mSome Text\033[0m"
contrario, las siguientes líneas de su terminal también estarán en negrita\033
puede usar\e
comoecho -e "\e[1msome text\e[0m"
En teoría así:
Pero en la práctica puede interpretarse como color de "alta intensidad".
(fuente: http://unstableme.blogspot.com/2008/01/ansi-escape-sequences-for-writing-text.html )
fuente