Árbore de Nadal na liña de comandos

Chega o ano novo, xa non quero pensar en traballos serios.

Todo o mundo está tentando decorar algo para as vacacións: casa, oficina, lugar de traballo... Imos tamén decorar algo! Por exemplo, unha liña de comandos. Ata certo punto, a liña de comandos tamén é un lugar de traballo.

Nalgunhas distribucións xa está "decorado":

Árbore de Nadal na liña de comandos

Noutros, é gris e pouco visible:

Árbore de Nadal na liña de comandos

E podemos facer, por exemplo, así:

Árbore de Nadal na liña de comandos

Por suposto, todos os rotuladores teñen diferentes gustos e cores. Se tal cor paréceche hortera e inadecuada, sabe que este punto de vista ten todo o dereito á vida. E se tamén queres engadir un pouco de espírito de ano novo, segue lendo un breve artigo de ano novo de Cloud4Y.

En primeiro lugar, explicarei como a saída do terminal é "de cor". Isto faise usando secuencias de escape. Ou máis precisamente, as secuencias de códigos de control do terminal ANSI/VT100. O que significa automaticamente que o teu emulador de terminal debe admitir este estándar, se non, o milagre de Ano Novo non ocorrerá. E si, suponse que $SHELL é o teu xogo.

Estes comandos chámanse secuencias de escape porque ao comezo de cada un deles hai un carácter ASCII "escape". Hai moitas secuencias de control, e permiten, por exemplo, mostrar a configuración do terminal, controlar a visualización e o movemento do cursor, cambiar o tipo de letra, eliminar e ocultar texto. Elixiremos unha de entre todas as posibilidades, cambiando a cor do texto e do fondo.

Executar a secuencia de código *ESC*[{attr1};...;{attrn}m
Como símbolo Escapar utilízase a súa forma octal, é dicir 33. En canto aos atributos, aquí tes unha pequena lista de valores posibles:

0 Restablecer todos os atributos
1 Brillo (aumento do brillo)
2 Dim
4 Subliñado
5 Pestanexo
7 Inversa
8 Oculto (ocultar texto)

Cores de primeiro plano (cor do bolígrafo, o texto móstrase nesta cor):
30 Negro
31 vermello
32 Verde
33 Amarelo
34 Azul
35 Magenta (maxenta)
36 Cian (azul)
37 Branco

Cores de fondo (cor do papel ou cor de fondo):
40 Negro
41 vermello
42 Verde
43 Amarelo
44 Azul
45 Magenta (maxenta)
46 Cian (azul)
47 Branco

Teña en conta que se agora comanda no terminal: echo 33[0;31mнекоторый текст 33[0m’

... entón, previsiblemente, obterás un gobbledygook monocromo na saída:

Árbore de Nadal na liña de comandos

Por que? Porque era necesario utilizar as capacidades avanzadas do comando echo. É suficiente engadir unha clave: echo -e ‘ 33[0;31mнекоторый текст 33[0m’

A saída agora parecerá correcta:

Árbore de Nadal na liña de comandos

Resolvemos a cor da saída ao terminal. Agora imos ver como colorear o símbolo do sistema.

Isto faise cambiando a variable PS1. A variable é responsable do indicador da liña de comandos. O seu aspecto tamén se pode cambiar, incluíndo o uso de secuencias de escape. Pero hai unha pequena diferenza: cómpre comezar a secuencia co símbolo "[”, e remata co símbolo “]”, se non, sairá ao terminal.

Todas as posibles secuencias de comandos descríbense en detalle no manual de bash, polo que invito aos lectores a escoller por si mesmos o que prefiren ver no indicador da liña de comandos. Como exemplo, darei o meu valor para a variable PS1:

[ 33[34;1m]t[ 33[0m],[ 33[32m]u@l@h[ 33[0m]:[ 33[33m]W[ 33[0m],[ 33
[31m]![ 33[0m]$n

Vou descifrar este terrible feitizo:

[ 33[34;1 m] — activa a cor de fonte azul brillante (segundo atributo).
t – mostrar a hora actual no formato HH: MM: SS
[33[0m] - Restablecer a configuración da cor da fonte
, - só unha coma (inesperado, non?)
[33[32m] - activa a cor da fonte verde
u@l@h – mostrar o nome de usuario, o número do dispositivo terminal e o nome de host curto, separados polo símbolo “@”.
[33[0m] — restablecer de novo a configuración da cor da fonte
: - só dous puntos (de súpeto!)
[33[33m] - activa a cor da fonte amarela
W – mostrar o nome do directorio actual
[33[0m] — restablecer de novo a configuración da cor da fonte
, - outra coma (quen o diría!)
[33[31m] - activa a cor vermella da fonte
! — mostrar o número de comando no terminal
[33[0m] - Non esquezas restablecer a configuración da cor da fonte
$ — imprima “#” para root e “$” para todos os demais
n - tradución de liña. Para qué? Para que o comando comece no bordo esquerdo da xanela, en lugar de ao final da liña de comandos.

Onde redefinir unha variable? O lugar máis lóxico para facelo é ~/.bashrc.

A aparición da invitación está limitada só pola túa imaxinación. En principio, nada lle impide facer un indicador de liña de comandos en forma de árbore de Nadal utilizando as ferramentas descritas anteriormente. É certo, tal invitación será moi engorrosa e o traballo definitivamente non se volverá máis cómodo. A árbore de Nadal pódese mostrar simplemente enriba da liña de comandos ao iniciar sesión (aínda necesitamos editar ~/.bashrc). Vaia por iso! E grazas pola túa atención.

Árbore de Nadal na liña de comandos

Que máis podes ler no blog? Cloud4Y

Configuración superior en GNU/Linux
Pentesters á vangarda da ciberseguridade
Startups que poden sorprender
¿Necesítanse almofadas nun centro de datos?
A casa que construíu un robot

Subscríbete ao noso Telegrama-canle para que non te perdas o seguinte artigo! Escribimos non máis de dúas veces por semana e só por negocios. Lembrámosche tamén que o provedor de nube corporativa Cloud4Y lanzou a promoción "FZ-152 Cloud a prezo normal". Podes aplicar ata o 31 de decembro.

Fonte: www.habr.com

Engadir un comentario