13 abril, 2025

Cómo crear un comando en Linux

¿Alguna vez has escrito un comando en la terminal, solo para que Linux te diga “Permiso denegado”?
¿No sería genial tener un comando mágico que simplemente repetiera el último comando, pero con sudo?

¡Te presento a fock! 🚀


¿Qué hará nuestro comando fock?

Cada vez que escribas:

fock

Se ejecutará el último comando que ejecutaste en la terminal, pero agregándole sudo al inicio.

Por ejemplo:

apt install nginx
# -> Permiso denegado
fock# -> Ejecuta: sudo apt install nginx

Paso 1: Crear la función fock

Vamos a definir una función en tu shell.

Abre tu archivo de configuración de bash o zsh:

nano ~/.bashrc
# o si usas Zsh:
nano ~/.zshrc

Agrega al final del archivo esta función:

fock() {
    sudo $(fc -ln -1)
}

¿Qué significa esto?

  • fc -ln -1 → Obtiene el último comando que ejecutaste (sin número de historial ni edición).
  • sudo $(...) → Lo ejecuta como sudo.

Paso 2: Recargar la configuración

Para que el nuevo comando esté disponible inmediatamente, recarga tu terminal:

source ~/.bashrc
# o si usas Zsh:
source ~/.zshrc

¡Listo!


Paso 3: Usar fock en acción

Supongamos que intentas algo como:

apt update

Y recibes:

Could not open lock file /var/lib/apt/lists/lock - open (13: Permission denied)

En lugar de volver a escribir todo el comando con sudo, simplemente teclea:

fock

Y automáticamente ejecutará:

sudo apt update