\e
- специальный код побега специально для echo-e
, который анализируется на символ Побега, ^ [
(буквально, Ctrl- [; не вставлять [). Чтобы сохранить его в переменной, не изучая, введите в редакторе литерал Побега, можно использовать:
#!/bin/bash
BOLD="$( echo -e "\e[1m" )"
CYAN="$( echo -e "\e[36m" )"
echo "I am feeling ${BOLD}really ${CYAN}blue!"
-121--85871- printf
должен правильно отображать цвета
[user@host ~]$ name="Hello"
[user@host ~]$ name=$name"\e[36m\(Test\)\e[0m"
[user@host ~]$ echo $name
Hello\e[36m\(Test\)\e[0m
[user@host ~]$ printf $name
Hello\(Test\)[user@host ~]$
В последней строке «Тест» голубой и нет новой строки.
для echo
необходимо добавить -e
:
$ help echo
[...]
Options:
-n do not append a newline
-e enable interpretation of the following backslash escapes
-E explicitly suppress interpretation of backslash escapes
[...]
Цвета можно хранить в переменных при использовании echo -e
.
export txtblk='\033[0;30m' # Black - Regular
export txtred='\033[0;31m' # Red
export txtgrn='\033[0;32m' # Green
export txtylw='\033[0;33m' # Yellow
export txtblu='\033[0;34m' # Blue
export txtpur='\033[0;35m' # Purple
export txtcyn='\033[0;36m' # Cyan
export txtwht='\033[0;37m' # White
export bldblk='\033[1;30m' # Black - Bold
export bldred='\033[1;31m' # Red
export bldgrn='\033[1;32m' # Green
[...]
export undblk='\033[4;30m' # Black - Underline
export undred='\033[4;31m' # Red
[...]
export bakblk='\033[40m' # Black - Background
export bakred='\033[41m' # Red
export badgrn='\033[42m' # Green
export txtrst='\033[0m' # Text Reset
[user@host ~]$ echo "$txtblu hello"
\033[0;34m hello
[user@host ~]$ echo -e "$txtblu hello"
hello # this text is blue
-121--85874- Можно использовать кавычку ANSI C для перевода специальных символов: $ '...'
. Так что это доллар перед единичными котировками. Это позволяет вводить \n
и \t
для новой строки и вкладки, а также для цветовых кодов.
name="Hello"
name=$name$'\e[36m\(Test\)\e[0m'
echo $name
printf $name
Эти побеги ANSI C были представлены KSH более поздней версии, чем 88, и доступны на bash
, zsh
и busybox sh
. Он недоступен на тире
.
Vea la época (el 1
en 1:1.9.4-21
), anula sus paquetes (predeterminados )época 0
.
La época se introdujo en los paquetes rpm precisamente para poder "arreglar" los números de versión que van hacia atrás. Usar con extrema precaución.
Además, los paquetes RHEL/Centos probablemente incluyan muchas correcciones/ajustes locales. Le sugiero que comience con los paquetes fuente oficiales y los modifique, reemplazando las fuentes con versiones más nuevas según sea necesario.