La línea de comandos de Linux es una herramienta que todo administrador de sistemas debería conocer. Con el poder de los comandos a su alcance, hay muy poco que no pueda hacer. Sin embargo, junto con ese poder viene la necesidad de recordar esos comandos. Cuando se tiene en cuenta lo complicado que esos comandos pueden llegar a ser, es comprensible que algunos administradores tengan problemas para recordar lo que han hecho o necesitan hacer en el prompt de Bash.

Puede que tenga que emitir el comando:

iptables -A OUTPUT -o eth0 -p tcp -m multiport --sports 22,80,443 -m state --state ESTABLISHED -j ACCEPT

O, tal vez usted recientemente ha accedido a un servidor, pero no recuerda la dirección IP a mano.
¿Qué hace? La mayoría de los administradores de Linux le dirían inmediatamente que busque en su historial de Bash; y ese sería un sabio consejo. Al escribir el historial de comandos, se le presenta la última cantidad X de comandos que ha ejecutado en el sistema. La X se determina dentro del archivo ~/.bashrc, en la línea:

HISTSIZE=1000

El comando history es, de hecho, una gran manera de ver qué comandos has emitido. Usted puede peinar a través de eso, encontrar el comando que necesita, copiarlo, y luego pegarlo de nuevo en el símbolo del sistema. O bien, puede, en el símbolo del sistema, simplemente empezar a tocar la flecha hacia arriba en el teclado hasta que aterrice en el comando que necesita.

¿Y si te dijera que hay una manera mucho, mucho, mucho más fácil? La hay, y se llama Fish. Fish es un shell amigable e interactivo que se puede instalar en tu máquina Linux y que cuenta con:

  • Autosugerencias

  • Scriptabilidad

  • Cumplimiento de la página del hombre

  • Color VGA

  • Configuración basada en la web

  • .configuración basada en la web

  • Facilidad de uso

Voy a guiarte a través de la instalación y el uso del fish shell; una vez que hayas empezado a usar esta práctica herramienta, es probable que nunca vuelvas al viejo shell estándar de Linux.

Instalación

Fish se puede instalar en Ubuntu, Debian, Fedora, RHEL, openSUSE, CentOS, Arch Linux, Gentoo Linux, e incluso mac OS y Windows. Voy a demostrar la instalación en Elementary OS, por lo que la instalación para su distribución variará (puede obtener instrucciones para todas las plataformas soportadas desde la página principal de fish). La instalación para Elementary OS (así como para la mayoría de los sistemas basados en Debian) es la siguiente:

  1. Abrir una ventana de terminal

  2. Añadir el repositorio necesario con el comando sudo apt-add-repository ppa:fish-shell/release-2

  3. Actualiza apt con el comando sudo apt-get update

  4. Instala fish con el comando sudo apt-get install fish

Ya está; fish ya está instalado y listo para servir.

Primeros pasos

Estás en el prompt de Bash, con fish instalado, y no tienes ni idea de cómo hacer uso de él. Eso es porque todavía estás en tu prompt de Bash. Para hacer uso de fish, tienes que entrar en el prompt de fish. ¿Cómo lo haces? Escriba el comando fish y verá que su prompt cambia (Figura 1).

Figura 1: Su cambio puede ser dramático o sutil, dependiendo de cómo tenga configurado su prompt de Bash.

En este punto, está listo para empezar a usar fish. La mejor manera de hacerlo es empezar a escribir un comando. Verás que fish hace un gran trabajo al completar el comando, basándose en tu historial. Por ejemplo, si empiezo a escribir ssh, fish completará el comando con la entrada más reciente del historial de bash (Figura 2).

Figura 2: Fish hace un gran uso del historial de Bash.

Si ese es el comando que estás buscando, pulsa la tecla de flecha derecha para aceptar y luego pulsa Enter. La única advertencia de fish es que, una vez que hace una sugerencia, no puedes desplazarte por el historial de comandos similares (lo que sería una buena característica).

Una cosa realmente genial que puedes hacer con fish es obtener sugerencias de comandos, basadas en lo que escribes. Digamos, por ejemplo, que hay una herramienta ssh que quieres usar, pero no puedes recordar el nombre del comando (pero sabes que comienza con «ssh»). Escribe ssh y pulsa la tecla de tabulación. Fish le presentará sugerencias, una de las cuales podría ser el comando que está buscando (Figura 3).

Figura 3: Sugerencias de comandos de Fish.

Hay muchas cosas que puede hacer con fish. Para aprenderlas todas, su mejor apuesta es caminar a través del tutorial oficial de fish (que ofrece un montón de ejemplos que potenciarán su experiencia con fish).

Una vez que haya terminado con el prompt de fish, puede volver a bash escribiendo exit.

Configuración de fish

Una tarea que definitivamente debe realizar es la configuración. Fuera de la caja, el pescado es una herramienta increíblemente potente y práctico de usar. Sin embargo, fish ofrece un montón de personalizaciones que se pueden ajustar con la herramienta de configuración basada en la web. Para acceder a la interfaz web, entra en el shell de fish y escribe fish_config. Pulse Enter en su teclado y su navegador por defecto se abrirá a la página de configuración de fish (Figura 4).

Figura 4: La herramienta de configuración basada en la web de fish.

Recomiendo encarecidamente alterar el prompt de fish para que las diferencias entre éste y el prompt estándar no sean tan sutiles. Para hacer esto, haga clic en la pestaña prompt, desplácese hacia abajo hasta que encuentre un estilo que le convenga, seleccione ese prompt, y luego haga clic en el botón Set Prompt (Figura 5).

Figura 5: Diferenciación de su fish prompt de su Bash prompt.

Una vez que haya hecho los cambios, cierre la ventana (o pestaña) del navegador, vuelva a su ventana de terminal, y pulse Enter. La nueva configuración del indicador se establecerá y estará listo para funcionar.

Hay bastantes otras opciones que se pueden configurar dentro de la herramienta basada en la web. Desde aquí también se pueden configurar abreviaturas (alias) para los comandos. Esto también se puede hacer desde el prompt de pescado, pero el uso de la interfaz basada en la web hace que sea un poco más fácil. Digamos que usted regularmente hace ssh a un servidor en particular con el comando:

ssh -v [email protected]

Con las abreviaturas, usted podría acortar eso a, digamos ssho. Con esto en su lugar, sólo tendrías que escribir ssho (dentro de la concha de pescado), pulsar enter, y el comando completo se ejecutará. Para crear una abreviatura, ejecuta el comando fish_config (desde el prompt de fish), ve a la pestaña de abreviaturas en la herramienta basada en la web, y luego escribe tu abreviatura en el área de texto de la izquierda y el comando completo en el área de texto de la derecha (Figura 6). Pulse el botón Guardar y su abreviatura estará lista.

Figura 6: Añadir una abreviatura de comando para una mayor eficacia de los peces.

Asegúrese de cerrar la ventana (o pestaña) del navegador y de pulsar Intro (en el teclado) de nuevo en el indicador de peces.

Sigue aprendiendo

Para sacar el máximo partido a fish, sería conveniente que leyeras la documentación oficial de fish (sólo tienes que escribir help en el prompt de fish y pulsar Enter). Se sorprenderá gratamente de todo lo que este shell puede hacer por usted.

Afírmese de mi palabra, el fish prompt se convertirá muy rápidamente en una herramienta imprescindible para ayudarle en sus tareas administrativas diarias de Linux.

Aprenda más sobre Linux a través del curso gratuito «Introducción a Linux» de la Fundación Linux y edX.

Deja una respuesta

Tu dirección de correo electrónico no será publicada.