La concha de pescado

 

 

 

Una introducción a la concha de pescado

 

Llevo usando el Fish Shell durante meses y creo que es el mejor que he usado nunca. Por muchas razones.

La gente parece preferir Bash, que es el valor predeterminado en muchos sistemas (actualización: ahora el valor predeterminado de macOS es Zsh) o usar Zsh, con una gran herramienta como Oh My Zsh para hacerlo aún más sorprendente.

Bash, aunque es genial, es un shell muy básico, con un conjunto limitado de opciones configurables. Suelo usarlo principalmente para ejecutar scripts de Bash (que son otro tema) en lugar de como un shell interactivo. Zsh ofrece muchas funciones, pero requiere un poco de configuración para su instalación, lo que puede asustar a los principiantes. Además, demasiadas opciones y libertad significa que puedes quedar paralizado por la configuración con bastante facilidad y terminas cambiando las opciones 20 veces en una semana para asegurarte de que no te estás perdiendo nada.

No quiero criticar esos proyectos, que son increíbles y que utilicé durante mucho tiempo y, a veces, todavía utilizo. Esta descripción es mi intento de destacar los beneficios de Fish

¡Fish Shell al rescate! Este shell ofrece un entorno asombroso y una configuración completa desde el primer momento.

Mis características favoritas de Fish son:

  • Tiene mejores funciones de autocompletar para comandos ya ejecutados y esto por sí solo realmente hace que mi día a día sea más rápido y menos estresante.
  • Comienza a escribir un comando y presiona la uptecla para ver todas las veces en el historial del shell donde usaste ese comando anteriormente.
  • Puedes instalar Fish en cualquier sistema y funciona de la misma manera en todas partes, sin tener que personalizar demasiado para obtener cosas sofisticadas.

En lo que respecta a la creación de scripts, es bastante diferente de los scripts de Bash (en un mejor sentido, en mi humilde opinión), pero puedes ejecutar cualquier script de Bash siempre que tenga el prefijo #!/bin/bash.

Inmediatamente después de la instalación obtendrás estas cosas interesantes:

  • resaltado de sintaxis
  • Un buen mensaje
  • autocompletado
  • Sugerencia de parámetros con sugerencias de páginas de manual
  • configuración basada en web

y en mi opinión es el shell más amigable para principiantes.

 

Una de las cosas más curiosas que recuerdo fue la página de inicio. Al principio no podía entender si se trataba de una especie de reliquia del pasado:

Para aquellos pocos afortunados que disponen de una computadora gráfica, pueden configurar sus colores y ver funciones, variables e historial, todo desde una página web.

Entonces me di cuenta de que era humor de programador y me hizo reír. La tecnología siempre debería ser divertida, ¿no?

Primero lo primero: ¿qué es un shell?

Un shell es una interfaz con el sistema operativo subyacente. Permite ejecutar operaciones mediante texto y comandos, y ofrece a los usuarios funciones avanzadas como la posibilidad de crear scripts.

Instalación

Instalar Fish ejecutándolo brew install fishen macOS.

Consulta mi guía de terminal macOS

fishestá instalado en /usr/local/bin/fish.

Dado que es probable que esto ya esté en tu camino, corre fishpara iniciar el shell Fish (escribe exitpara volver a tu shell predeterminado)

Configuración

Una de las ventajas de Fish es que se puede configurar desde la web. Ejecútalo fish_configpara iniciar el cliente web.

Desde aquí puedes

  • Elija un esquema de colores de una lista de esquemas predefinidos
  • Elija una indicación de una lista de indicaciones predefinidas
  • Inspeccionar las funciones y variables de Fish configuradas
  • ver el historial de comandos

La configuración se almacena en la ~/.config/fishcarpeta, y allí es donde puedes editarla sin tener que usar la configuración basada en web (opcional).

Características de Fish: resaltado de sintaxis, autocompletado y sugerencia de parámetros con sugerencias en páginas de manual

Fish le permite ejecutar los comandos Unix habituales disponibles en su sistema. Operaciones del sistema de archivos, por ejemplo:

  • lspara listar archivos
  • cdpara cambiar de carpeta
  • rmpara eliminar un archivo o carpeta
  • mvpara mover un archivo a otra carpeta o cambiar el nombre de un archivo
  • cpcopiar un archivo

Si ejecutas uno de esos comandos (o anycomando, en realidad) comenzarás a ver que las palabras que escribes adquieren diferentes colores. Esto hace que sea muy fácil leer y comprender los comandos.Te recomendamos Mejores Alfombras de Hidromasajes

Fish también agrega la función de autocompletar. Si ejecutó el programa cd ~/.config/fish/ anteriormente y ahora escribe cd , Fish le sugerirá comandos que podría querer escribir y solo tendrá que presionar la flecha derecha para aceptar la sugerencia (o puede continuar escribiendo para cambiar el comando). Esta sugerencia se basa en el historial de comandos y las rutas de archivo.

Las sugerencias basadas en el autocompletado también funcionan para los comandos. Aquí escribí cy presioné la tecla tabulador:

Fish también sugiere parámetros y cómo utilizarlos. Escribe ls -y pulsa tab. A continuación se muestra una lista de los parámetros que puedes utilizar y su significado:

 

Esta ayuda en línea se genera a partir de páginas de manual y la útil ayuda del shell (intente ejecutar man lspara obtener la ayuda completa).

Establecer Fish como el shell predeterminado

Si te gusta Fish una vez que lo pruebas y quieres convertirlo en tu shell predeterminado, abre el archivo /etc/shells. Yo suelo picohacer esas pequeñas ediciones de archivos con pico /etc/shells, pero puedes usar cualquier editor que prefieras, incluso VS Code con code /etc/shells.

Debería contener algo similar a lo siguiente:

# List of acceptable shells for chpass(1).# Ftpd will not allow users to connect who are not using# one of these shells./bin/bash/bin/csh/bin/ksh/bin/sh/bin/tcsh/bin/zsh

Agregue esta línea al final para agregar la carcasa de pescado:

/usr/local/bin/fish

A continuación, corre

chsh -s /usr/local/bin/fish

Ingrese su contraseña y el shell cambiará para su usuario.

Complementos

Puedes instalar complementos de Fish.

Fisher es un popular administrador de paquetes de Fish.

Instalarlo usando

curl https://git.io/fisher --create-dirs -sLo ~/.config/fish/functions/fisher.fish

y está disponible con el fishercomando.

Ahora se puede instalar un paquete usando fisher add github-repository-pathy eliminarlo usando fisher rm github-repository-path.

Enumere todos los complementos instalados mediante fisher ls.

Ejecutar fisherpara actualizar todos los paquetes que instalaste.

Los complementos populares son

  • edc/bassHacer que las utilidades de Bash sean utilizables en Fish
  • jorgebucaran/fnm Administrador de versiones de Node.js

Aquí hay una lista de paquetes que puedes instalar.

Cumplimiento de POSIX

Varios shells cumplen con el estándar de comando de shell POSIX.

POSIX significa

  • Portátil
  • Operante
  • Sistema
  • Interfaz
  • X (para Unix)

y es un estándar que pretende unificar los distintos entornos Unix que se han creado a lo largo del tiempo. Existe un subconjunto estándar de comandos de shell, que pretende ser una forma de unificar el funcionamiento de los shells de Unix.

Unix es una especificación o estándar para una familia de sistemas operativos. Linux y macOS se basan en Unix (Windows no ).

bashy kshotros son compatibles con POSIX. La compatibilidad con POSIX hace que los scripts escritos con compatibilidad con POSIX funcionen en todos los shells compatibles con POSIX.

Fish (como shpor cshejemplo) no es compatible, por lo que no es un shell POSIX, y esto significa que escribir comandos y scripts para Fish es diferente . Los scripts escritos para Fish no funcionarán fuera de Fish. Al igual que cshlos scripts solo funcionan en csh (y derivados).

¿Por qué es diferente? Hay varias razones, pero imagino que tener que soportar POSIX significa que el shell debe adherirse a un lenguaje común que podría interferir con la filosofía y la forma de trabajar del shell. No todos quieren tener ese bagaje de tecnología que soportar para siempre.

Muy raramente esto será un problema al ejecutar comandos, pero debes tenerlo en cuenta cuando se trata de crear scripts y programar.

Tips de línea de comandos de Linux




Tal vez te puede interesar:

  1. Introducción a React
  2. Agregar evento de clic a los elementos DOM devueltos desde querySelectorAll
  3. Cómo cambiar el valor de un nodo DOM
  4. Cómo comprobar si un elemento DOM tiene una clase

La concha de pescado

Primero lo primero: ¿qué es un shell?InstalaciónConfiguraciónCaracterísticas de Fish: resaltado de sintaxis, autocompletado y sugerencia de parámetros co

programar

es

2025-01-17

 

Si crees que alguno de los contenidos (texto, imagenes o multimedia) en esta página infringe tus derechos relativos a propiedad intelectual, marcas registradas o cualquier otro de tus derechos, por favor ponte en contacto con nosotros en el mail [email protected] y retiraremos este contenido inmediatamente

 

 

Update cookies preferences