Quienes vivimos gran parte de nuestra jornada en la terminal es normal que tarde o temprano acabemos usando una shell como Fish, que nos hace la vida más cómoda. En mi caso muchas veces realizo tareas que toman cierto tiempo, y me viene bien que algo me avise cuando terminan, para que mientras tanto pueda ir haciendo otras cosas. Si usas GNOME Terminal y Bash o Zsh, esto viene activado por defecto en las últimas versiones, pero si usas Fish, no.
Si usas Fish como tu shell, cosa que recomiendo, tal vez te hayas topado con el problema de que no puedes hacer una cosa tan sencilla en Bash como:
una_variable="$(cat un_archivo_con_varias_lineas.txt)"
echo "$una_variable"
Asumiré 3 cosas:
$ docker login registry.example.com Username: myuser Password: WARNING! Your password will be stored unencrypted in /home/myuser/.docker/config.json. Configure a credential helper to remove this warning. See https://docs.docker.com/engine/reference/commandline/login/#credentials-store Login Succeeded
Veamos cómo solucionarlo:
Simplemente responderá con un 200 OK
hasta que lo detengas con
Ctrl+C
, y devolverá la fecha y hora en que se ha levantado el servidor.
Ojo, el comando usa sintaxis de Fish:
Teníamos un ordenador con 1 usuario, y ahora pasan a ser más, pero necesitan poder compartir documentos.
Para lograrlo, seguiremos todas las buenas prácticas posibles:
No sé si esto está disponible en otras distribuciones, pero es una pasada. Escribes un comando, y si no encuentra el paquete que lo ejecuta, te lo instala automáticamente:
Supongamos que estás actualizando tu Linux...
# dnf -y update # Si fuera en Fedora # apt-get -y update && apt-get -y upgrade # Si fuera en Debian
... y te tienes que ir, y te gustaría apagar tu ordenador cuando acabe, ¡pero todavía le queda un rato largo!
Si bien siempre me ha encantado Bash, hay que reconocer que Fish es increíble:
No te tienes que complicar configurando absolutamente nada, por defecto ya viene coloreando tu terminal, auto completando tus comandos y permitiendo llevar todo esto de las configuraciones de manera muy simple e intuitiva mediante una interfaz web (local, claro está) en donde tendrás al alcance absolutamente todo lo que quieras modificar; desde el historial de comandos, hasta las funciones a ejecutarse por defecto, colores, autocompletado inteligente y/o personalizado, ¿Ya les dije que el auto completado es inteligente y simplemente aprende tus comandos? ¡No tienes que decirle que haga nada, él solito aprende!