Sometimes, the examples use a 3[ prefix, and sometimes it's \E[, is there a difference between both?
Primeira camada: A \
é um "caractere de escape" em C e outras linguagens de programação. 3
e \x1B
são escapes octais e hexadecimais no estilo C para o caractere de controle ASCII ESC
( byte hexadecimal 0x1B). \e
e \E
são parte de C também e também significam o mesmo caractere ESC
, mas não são tão comuns.
Qualquer das opções acima, o mesmo ESC
será inserido, mas \e
será menor do que 3
.
Are there other magic combinations? Where can I find a full list of those special characters and how to use them?
Segunda camada: Similarmente, o ASCII ESC
é um prefixo para códigos de escape ANSI usado pelo terminal VT100 e seus descendentes. Os códigos disponíveis não chegam ao bash
, mas ao emulador de terminal específico que você está usando. Provavelmente todos suportam os códigos definidos em ECMA-48 , mas é apenas um pequeno subconjunto.
A página Sequências de controle Xterm tem uma lista extensa, mas você vai querer procurar documentação para o que quer que você esteja usando, seja gnome-terminal
, Konsole, rxvt
ou o que for. Alguns são específicos do console Linux (tty) .