Utilidades terminal IV

Índice

Ya estoy aquí de vuelta, después de los capítulos I, II y III vamos evidentemente por el IV. Este es el orden natural de las cosas, lo natural no tiene por que ser lo correcto, un ejemplo claro lo tenemos con la Saga Star Wars. Bueno sin mas dilaciones vamos al lio.

Glow

Forma parte del proyecto Charm el cual se define como " Una herramientas para hacer que la línea de comandos sea glamorosa “. Esta utilidad nos permite la visualización de archivos MarkDown desde el terminal de una manera facil y navegable. Interpreta perfectamente las etiquetas MakrDown.

Instalación

MacOs

brew install glow

Para la instalación en Linux y varios tenemos el software ya empaquetado aquí. Descargamos el paquete correspondiente a nuestras necesidades de entorno e instalamos.

Debian y derivados

wget https://github.com/charmbracelet/glow/releases/download/v1.4.1/glow_1.4.1_linux_amd64.deb
dpkg -i glow_1.4.1_linux_amd64.deb
apt install -f

Uso

Leer archivo:

glow README.md

Lecr entrda estandar ( stdin )

glow -

Leer archivo README de un repositorio de GitHub / GitLab

glow github.com/charmbracelet/glow

Leer archivo markdown desde HTTP

glow https://www.dominio.es/ficero.md

Opciones más comunes:

-a, --all          Muestra todos los archivos del directorio actual
--config string    Configuración a utilizar (default .~/.config/glow/glow.yml)
-h, --help         Muestra la ayuda
-p, --pager        Visualizar paginado
-v, --version      Versión instalada
-w, --width uint   Ajuste del ancho

Configuración

Podemos configurar el comando del siguiente modo:

glow --config

Ejemplo de configuración:

# style name or JSON path (default "auto")
style: "light"
# show local files only; no network (TUI-mode only)
local: true
# mouse support (TUI-mode only)
mouse: true
# use pager to display markdown
pager: true
# word-wrap at width
width: 80

Encriptación

Podemos realizar una encriptación de los documentos MarkDown utilizando la biblioteca cd código abierto Charm. Esta biblioteca genera claves simétricas y cifrándola con la clave pública SSH local generada con la misma.

Ccze

Ccze es una utilidad escrita en C. Su función principal es colorear logs del sistema y determinadas aplicaciones o servicios. Adicionalmente dispone de una serie de complementos ya incorporados que por defecto colorea, entre otros: apm, distcc, exim, fetchmail, ftpstats, httpd, icecast, oops, php, postfix, procmail, proftpd, squid, sulog, super, syslog, ulogd, vsftpd y xferlog. La salida estándar se puede convertir en varios formatos, lo cual premite generar archivos informe para posteriormente enviarlos mediante mail. Generar esos informes que les encantan a los jefes.

Instalación

MacOs

brew install ccze

Debian y derivados

apt install ccze

Uso

Desde nuestro terminal, nos ayudamos de nuestro amigo ‘pipe’ o tubería:

tail -f /var/log/auth.log | ccze

La naera recomendada:

ccze [opciones] < archivo.log

Podemos jugar con el pipe aplicando filtros grep, etc.

Bonus

Ping coloreado:

ping <ip o fqdn> | xargs -n1 -i bash -c 'echo `date +%F%T`" {}"' | ccze

Generamos un informe en formato html de los fallos de intentos de acceso mediante ssh:

cat /var/log/auth.log | grep -i Failed | ccze -A -h > informe.html 

Screen

Screen, es un administrador de ventanas en pantalla completa, que multiplexa un terminal en varios procesos, como resultado cada proceso asociado a una nueva terminal. Al utilizar Screen creamos en una única ventana con una terminal en ella (o un comando especificado) de forma independiente. Esto nos permite recuperar el terminal, aun si estamos conectados el remoto mediante ssh y se corta la conexión, con la ventaja que esto nos aporta.

Tiene una gran cantidad de características importantes para el trabajo diario, entre ellas destacan:

  • Listar ventanas activas
  • Activar o desactivar el registro de salida
  • Copiar y pegar texto en las ventanas
  • Mostrar el historial
  • Cambiar entre ventanas
  • Etcétera.

Instalación

Habitualmente su instalación se realza solo en servidores por su uso para evitar fallos en los cortes de conexión, Aun que también se puede instalar en local para evitar fallos al ejecutar un terminal con algún proceso en ejecución y hacer un cierre accidental del terminal.

MacOs

brew install screen

Debian y derivados

apt install screen

Uso

Comprobamos que su instalación fue correcta mostrando la versión:

screen --version

Creamos una sesión, indicando un nombre:

screen -S <nombre-de-sesión>

Si queremos desvincularnos de la sesión sin cerrarla utilizamos la siguiente combinación de teclas:

Ctrl+a d

Para volver a una sesión que ya existe:

screen -r <nombre-de-sesión>

Screen si no hemos puesto nombre a la sesión, están numeradas y es lo que deberemos utilizar para recuperarla:

screen -r <numero de sesión>

Listar sesiones:

screen -ls

Para cerrar la sesión, simplemente dentro de ella:

exit

Bonus

Habitualmente el software mas conocido para realizar conexiones desde el terminal vía serie es MiniCom, pero con Screen también lo podemos hacer:

screen /dev/<console_port> 115200

Espero que sea útil el post, nos vemos el el próximo.