Un banner ASCII para tu terminal: bash, zsh, fish y PowerShell
Guarda el dibujo como TXT y muéstralo solo en sesiones interactivas para no alterar otras herramientas.
Un banner con tu nombre o el del equipo te ayuda a identificar la terminal. Crea uno en el convertidor de texto y usa TXT para guardarlo, por ejemplo como ~/.banner.txt.
Dos reglas antes de empezar
Conserva las barras inversas. Una cadena entre comillas puede interpretar \ o $. Leer un archivo con cat evita tener que escapar cada carácter. Otra opción es un heredoc con el delimitador entre comillas.
No imprimas decoración en sesiones no interactivas. Algunas herramientas de transferencia o automatización esperan una salida concreta. Un banner inesperado puede interferir con ellas. Añádelo solo a las sesiones que usa una persona.
bash: archivo ~/.bashrc
Puedes añadir una comprobación de sesión interactiva:
if [[ $- == *i* && -r ~/.banner.txt ]]; then
cat ~/.banner.txt
fi
Si prefieres incluir el dibujo directamente:
if [[ $- == *i* ]]; then
cat <<'EOF'
___ _____ __
| \| __\ \ / /
| |) | _| \ V /
|___/|___| \_/
EOF
fi
Las comillas de 'EOF' impiden expandir variables y escapes dentro del dibujo. El delimitador final debe empezar al principio de la línea.
zsh: archivo ~/.zshrc
~/.zshrc se lee en sesiones interactivas. Para mostrar el archivo:
[[ -r ~/.banner.txt ]] && cat ~/.banner.txt
También puedes usar el heredoc anterior sin la comprobación exterior de bash. Si tu tema usa una función de prompt instantáneo, sigue sus instrucciones sobre la salida durante el inicio; imprimir después de su inicialización puede provocar avisos.
fish: fish_greeting
En ~/.config/fish/config.fish, define el saludo:
function fish_greeting
if test -r ~/.banner.txt
cat ~/.banner.txt
end
end
Leer el TXT evita los cambios que podrían producirse al introducir las barras dentro de una cadena.
Añade color
En bash o zsh puedes imprimir una secuencia ANSI antes del archivo y restablecer el color al terminar:
printf '\033[36m'
cat ~/.banner.txt
printf '\033[0m'
31 corresponde a rojo, 32 a verde, 33 a amarillo, 35 a magenta y 36 a cian. El restablecimiento final evita que el resto de la terminal conserve ese color.
PowerShell: el perfil
PowerShell puede ejecutar el archivo indicado por $PROFILE al iniciarse. Abre el perfil de la instalación que utilizas y añade un bloque como este:
$banner = @'
___ _____ __
| \| __\ \ / /
| |) | _| \ V /
|___/|___| \_/
'@
Write-Host $banner -ForegroundColor Cyan
La cadena delimitada por @' y '@ conserva el contenido literalmente. El cierre debe empezar al principio de la línea. Si tu organización restringe los scripts de perfil, respeta su configuración. PowerShell 7 facilita el uso de Unicode; en Windows PowerShell 5.1 conviene comprobar la codificación del archivo, especialmente con tildes y bloques.
Mensaje de acceso SSH
En sistemas que lo admiten, el administrador puede colocar un mensaje en /etc/motd. Será visible para quienes inicien sesión según la configuración del servidor. Algunos sistemas generan partes del mensaje mediante mecanismos adicionales, por lo que conviene revisar la configuración existente.
Usa un nombre claro del equipo y una fuente ASCII sencilla. No añadas una impresión incondicional al inicio de cualquier shell: podría aparecer en conexiones usadas por automatizaciones.
En una herramienta propia
Comprueba si la salida es una terminal antes de imprimir el banner:
import sys
if sys.stdout.isatty():
print("DEV")
if (process.stdout.isTTY) console.log('DEV');
Sustituye DEV por el dibujo guardado, conservando sus escapes como explica la guía de banners para README y código.
Para una ventana estrecha, elige Small, Small Slant o Mini. Comprueba las columnas del texto real en la comparación de fuentes.