Fish una shell facil de usar
26/09/2024Fish es una Shell re-escrita en Rust. Que ya viene supercargada por default. Es muy "customizable".
Existen diferentes "Shell" que puedes usar en los sistemas Unix. Entre ellos esta bash
comúnmente en Linux, zsh
en MacOs y csh
usado en FreeBSD. Entre otros.
Estos Shell por si solos no son muy intuitivos. Por lo que hay que supercargarlos con paquetes extras, como oh-my-zsh
y oh-my-bash
. Que ayudan a mejorar la experiencia de usuario.
Fish ya viene con esto incluido, sin modificar ya ofrece mucho mas que el resto de alternativas. Una buena opción si estas iniciando en Linux o en el uso de la terminal.
Algunas características:
- Auto-completado por tu historial
- Auto-completado por sugerencia
- Configuración de abreviaciones
- Fácil de personalizar
- Configuración por GUI web
Instalación
Fish esta disponible para casi cualquier sistema operativo así que para instalarlo deberemos usar el gestor de paquete de nuestro sistema operativo.
Ubuntu/Debian:
# apt install fish
Arch Linux:
# pacman -S fish
Fedora:
# dnf install fish
FreeBSD:
# pkg install fish
MacOS:
# brew install fish
Uso
Una vez instalado podemos empezar a usarlo y probar algunas de sus características.
Basta con ejecutar en la terminal el comando fish
. Esto ejecutara un nuevo prompt y ¡Estaremos dentro de Fish!
Ahora podemos escribir cualquier comando, e inmediatamente veremos que Fish nos auto-completara. Puede ser un comando que ya hayamos usado anteriormente o un comando muy común como sugerencia. Para aceptarlo bastara presionar la tecla tab
.
Atajos
Por defecto Fish cuenta con algunos atajos al estilo Emacs. Por lo que te podrían resultar familiares:
Combinación | Acción |
---|---|
Home o Control+a |
Mueve el cursor al inicio del la linea |
End o Control+e |
Mueve el cursor al final del la linea |
Up o Control+p |
Navega hacia atrás en el historial de comandos |
Down o Control+n |
Navega hacia adelante en el historial de comandos |
Alt+Backspace |
Elimina la ultima palabra detrás del cursor |
Control+k |
Elimina a partir del cursor hasta el final de la linea |
Alt+/ |
Deshace el ultimo cambio |
Control+w |
Corta la ultima linea detrás del cursor |
Control+y |
Pega lo ultimo copiado |
Entre un montón mas de combinaciones. Que ademas puedes configurar para que sean mas parecidas a Vi/Vim
para los que están acostumbrados. Puedes encontrar mas información en:
https://fishshell.com/docs/current/interactive.html
Personalización
Fish ofrece una personalización fácil para nuestro "Prompt" y para la gama de colores en la consola.
Para configurar lo vía GUI en su versión web, solo tenemos que ejecutar el comando fish_config
. En automático se abrirá una ventana en el navegador, y desde ahí podremos configurar varias cosas sin necesidad de programar o modificar algún archivo.
La otra forma rápida es mediante la misma consola. Con los siguientes comandos:
$ fish_config prompt show // Nos mostrara la lista de prompt's
$ fish_config prompt choose PROMPT // Para seleccionar un prompt
$ fish_config prompt save // Para guardar los cambios
Y para los temas de colores:
$ fish_config theme show // Nos mostrara la lista de temas
$ fish_config theme choose THEME // Para seleccionar un tema
$ fish_config theme save // Para guardar los cambios
¿Que te parece Fish? Si te ha gustado y quieres usarlo como tu Shell principal. Puedes hacerlo con el siguiente comando:
$ chsh
Te pedirá tu contraseña y luego preguntara por la shell que quieres, ahí podrás /usr/bin/fish
.
¿Tu que Shell configurada tienes en tu terminal?
Tags: #fish
#shell
#tutorial
#review