Trucos de Linux para exprimir la terminal como un profesional

Última actualización: enero 25, 2026
  • Dominar los comandos básicos (navegación, archivos, procesos) es esencial para trabajar rápido y seguro en Linux.
  • El historial avanzado, el autocompletado y los alias permiten reutilizar y encadenar comandos sin volver a escribirlos.
  • Atajos de teclado y trucos de edición aceleran el trabajo en la terminal y mejoran su accesibilidad.
  • Herramientas como rsync, find, column o htop amplían la potencia de la consola para tareas avanzadas.

trucos de linux

Si llevas un tiempo usando Linux o acabas de aterrizar en este mundo, tarde o temprano descubrirás que la terminal es el auténtico corazón del sistema. La interfaz gráfica está muy bien para muchas tareas, pero cuando quieres ir rápido, automatizar cosas o administrar un servidor remoto, vivir en la línea de comandos marca la diferencia.

La realidad es que, aunque en el escritorio apenas roce el 3% de cuota de mercado, Linux domina la nube y la infraestructura. La inmensa mayoría de servicios de alojamiento, plataformas cloud y proyectos dev se ejecutan sobre alguna distribución. Por eso, conocer no solo los comandos básicos, sino también una buena colección de trucos, atajos y pequeñas “malicias” de shell, te convierte en alguien mucho más eficiente delante del teclado.

Por qué merece la pena dominar comandos y trucos de Linux

Según encuestas como la de StackOverflow, una mayoría de desarrolladores profesionales prefiere Linux para trabajar, en gran parte porque es gratuito, de código abierto y extremadamente flexible. A eso hay que sumarle una seguridad generalmente mejor que la de otros sistemas y una herramienta clave: la consola, con su combinación de comandos, flags y argumentos.

Un comando no es más que un programa que se ejecuta desde la línea de órdenes. Lo lanzas escribiendo su nombre y pasándole, si hace falta, parámetros: opciones (flags) y argumentos. Muchas acciones que en la interfaz gráfica realizas con un clic —cerrar una ventana, montar una unidad, cambiar permisos— se apoyan internamente en estos mismos programas de consola.

Las flags (opciones) son modificadores que alteran el comportamiento de un comando. Suelen ir precedidas de o (por ejemplo, -r, -h, --color=auto) y pueden cambiar cosas como el formato de salida, si algo se hace de manera recursiva, si se fuerza una acción, etc. Los argumentos suelen ser rutas de archivos, nombres de usuario, patrones de búsqueda u otros valores que ese comando necesita para funcionar.

En este artículo vamos a juntar, por un lado, los comandos esenciales que cualquier usuario debería controlar y, por otro, una batería de trucos prácticos para moverte mucho más rápido por la terminal: historial avanzado, sustitución de texto, combinación de órdenes, navegación exprés, gestión de procesos, atajos de teclado… La idea es que, aunque seas principiante, puedas dar un salto importante en poco tiempo.

Comandos de Linux que usarás constantemente

Empezamos con una recopilación de órdenes que se usan a diario en prácticamente cualquier distro. Muchas vienen preinstaladas; otras tendrás que añadirlas con tu gestor de paquetes preferido (apt, yum, dnf, pacman, etc.).

El punto de partida casi siempre es abrir un emulador de terminal. En la mayoría de entornos gráficos se consigue con Ctrl + Alt + T, o buscando “Terminal” en el menú de aplicaciones.

Moverte por el sistema de archivos: ls, cd, pwd, mkdir, cp, mv, rm

El comando ls sirve para listar el contenido de un directorio. Sin parámetros muestra el contenido de la carpeta actual. Con opciones (por ejemplo, -l, -a o --color=auto) puedes pedir detalles, archivos ocultos, colores, etc.

Para no tener que escribir siempre la misma opción, puedes crear un alias. Un alias es una especie de “atajo” que hace que al teclear una palabra se ejecute otro comando más largo. Por ejemplo, puedes definir alias ls="ls --color=auto" para que la salida aparezca siempre coloreada sin recordar el flag. Con alias sin argumentos verás los alias activos, y con unalias nombre puedes eliminar uno concreto.

Cuando te pierdes, pwd te muestra la ruta absoluta del directorio actual. Verás algo como /home/usuario/Documentos. Es muy útil para orientarse y para copiar y pegar rutas en otros comandos.

Para desplazarte por directorios usas cd. Con cd carpeta entras en una subcarpeta, con cd .. subes un nivel, con cd - saltas al directorio anterior, y con cd a secas o cd ~ vuelves a tu directorio personal. Es de los trucos más sencillos pero te ahorra bastante tecleo.

Crear directorios es tarea de mkdir. Puedes levantar una sola carpeta con mkdir fotos o toda una ruta de golpe con mkdir -p peliculas/2024/enero, donde la opción -p crea los directorios intermedios que hagan falta.

Copiar y mover cosas se hace con cp y mv. cp origen destino copia archivos, y con -r (o -R) recorre directorios completos. mv sirve tanto para cambiar un archivo de sitio como para renombrarlo, dependiendo de si el destino es una carpeta o un nombre nuevo.

Para borrar tienes rm. Es potentísimo y, si te despistas, también bastante peligroso. rm fichero elimina un archivo suelto, rm -r carpeta/ borra una carpeta con su contenido, y rm -rf combina borrado recursivo y forzado. Mucho ojo con esa última combinación: si te equivocas de ruta, te llevas por delante medio sistema.

Consultar ayuda, crear archivos y gestionar permisos: man, touch, chmod, ./

En Linux casi todo está documentado. Si quieres ver el manual de uso de una utilidad, prueba con man comando. Navegas con las teclas de cursor o AvPág/RePág y sales con q. Incluso existe man man para saber cómo funcionan los propios manuales.

El comando touch se usa a menudo para crear archivos vacíos de manera rápida (por ejemplo, touch notas.txt). También permite modificar las marcas de tiempo de acceso y edición con opciones como -m, aunque esto es menos habitual en el día a día.

En cuanto a permisos, chmod es la herramienta estándar. Con algo como chmod +x script.sh haces que un archivo sea ejecutable, lo que te permite lanzarlo directamente desde la terminal. Los permisos se pueden expresar en notación simbólica (r, w, x) o numérica, pero como punto de partida, aprender a usar +x ya te desbloquea muchos casos reales.

Te puede interesar:  Cómo Recuperar Word

Cuando un fichero tiene permiso de ejecución, puedes arrancarlo con la notación ./nombre, que le dice al shell que busque el ejecutable en el directorio actual. Es la forma típica de lanzar scripts en Bash, programas empaquetados en un .run, herramientas en Python con shebang al principio, etc.

Salir, privilegios de administrador y apagado: exit, sudo, shutdown

Para terminar una sesión de shell, basta con exit o, a menudo, con la combinación Ctrl + D. Si estás en una pestaña concreta del emulador de terminal, cerrará solo esa pestaña; si es una ventana independiente, se cierra completa.

La mayoría de tareas sensibles (instalar paquetes, modificar /etc, tocar directorios del sistema…) requieren privilegios elevados. Ahí entra sudo, que te permite ejecutar un comando puntual como superusuario. Se usa anteponiéndolo a la orden que quieres lanzar, por ejemplo sudo apt install gimp. El sistema te pedirá la contraseña del usuario con permisos de administrador.

Para apagar o reiniciar desde la terminal suele usarse shutdown. Con shutdown now detienes la máquina inmediatamente (o en el minuto siguiente, según la distro), con shutdown 20:40 programas el apagado a una hora concreta, y con shutdown -r now haces un reinicio. Si te arrepientes de un apagado programado puedes cancelarlo con shutdown -c.

Gestión de procesos y monitorización: ps, htop, kill, ping

Para ver qué está ejecutando tu shell actual, ps muestra una lista básica de procesos con sus identificadores (PID), terminal asociado y comando. Si necesitas algo más completo e interactivo, htop se ha convertido casi en estándar: ves consumo de CPU y RAM, cargas por núcleo, procesos en tiempo real y puedes matar tareas desde una interfaz en modo texto.

Cuando una aplicación se queda colgada o no responde, el clásico es recurrir a kill. Esta utilidad envía señales a un proceso concreto; lo más habitual es mandar la señal de terminación usando kill PID o, si no coopera, kill -9 PID (señal SIGKILL). También existen variantes como killall nombre_binario para actuar sobre todos los procesos con ese nombre.

En el terreno de red, ping es quizás la orden más conocida. Sirve para comprobar conectividad hacia una IP o un dominio. Con ping google.com o ping 8.8.8.8 ves si hay respuesta, tiempos de ida y vuelta y pérdida de paquetes. Es lo primero que se suele probar cuando “no hay Internet”.

Trabajar con archivos de texto: cat, less, head, tail, grep, wc

Gran parte de la configuración de Linux y muchos logs son archivos de texto plano. Saber inspeccionarlos rápido ahorra mucho tiempo. El comando cat imprime el contenido completo de un archivo por pantalla o concatena varios. Para ficheros largos no es lo más cómodo, porque te lo suelta todo de golpe.

En esos casos es más práctico less, que te permite navegar hacia arriba y hacia abajo, buscar dentro del texto, moverte por páginas, etc. Es como un visor interactivo y, además, hereda atajos típicos de more y de vim. Una vez dentro, pulsas q para salir.

Si solo te interesa el principio de un archivo, head muestra por defecto las primeras 10 líneas. Con -n puedes personalizar el número: head -n 5 archivo.log. Por el otro extremo, tail enseña las últimas líneas, y con tail -f log puedes ir viendo en tiempo real cómo crece un log (muy útil para monitorizar servicios).

Buscar patrones dentro de uno o varios archivos es territorio de grep. Esta herramienta soporta expresiones regulares y te permite filtrar líneas que contienen una cadena determinada. Algo como grep "error" /var/log/syslog te muestra solo aquellas entradas donde aparece la palabra “error”. Con -c obtienes un recuento de coincidencias, y con -r puedes recorrer directorios enteros.

Para hacer recuentos rápidos, wc devuelve el número de líneas, palabras y bytes de un fichero. La salida habitual es del estilo 37 207 1000 archivo.txt, y con opciones como -w o -l puedes limitarte solo a palabras o líneas.

Información del sistema y utilidades variadas: echo, whoami, whatis, which, uname, neofetch

El comando echo imprime texto y el valor de variables en pantalla. Es muy usado en scripts y para comprobar variables de entorno, por ejemplo echo "Hola $USER" mostrará tu nombre de usuario actual.

Si no recuerdas con qué usuario estás autenticado, whoami lo muestra directamente. Es lo mismo que escribir echo $USER, pero más rápido de teclear.

Cuando no tienes claro qué hace exactamente una orden, whatis devuelve una descripción de una línea a partir de su entrada en las páginas de manual: whatis python, whatis grep, etc. Y si lo que quieres es saber dónde está el ejecutable que se va a lanzar al escribir un comando, which enseña la ruta completa, por ejemplo /usr/bin/python o /usr/bin/brave.

Para tener una foto rápida del sistema operativo, el kernel y la arquitectura, uname -a es el clásico. Sin flags se queda algo corto, pero con -a te suelta la información extensa del sistema: nombre de la máquina, versión del kernel, tipo de CPU, etc.

Y si quieres algo más vistoso, neofetch muestra un resumen del sistema junto a un logo ASCII de tu distribución: versión de kernel, shell, entorno de escritorio, tema, uso de memoria y más. No suele venir instalado por defecto, pero está en casi todos los repositorios.

Gestores de paquetes y descarga de archivos: apt, yum, pacman, unzip, wget, rsync, find

En Debian, Ubuntu, Linux Mint y derivadas el protagonista es apt. Con sudo apt update refrescas la lista de paquetes disponibles, sudo apt upgrade actualiza el sistema, y sudo apt install nombre_paquete instala nuevas aplicaciones. En distros basadas en Red Hat (Fedora, CentOS, RHEL) se usa yum o dnf; en Arch y Manjaro, pacman con sintaxis como sudo pacman -S gimp.

Para manejar archivos comprimidos en .zip desde la terminal, unzip es tu amigo: unzip archivo.zip extrae el contenido en el directorio actual. Suelen existir también herramientas para otros formatos (tar, gzip, xz…), pero el zip sigue siendo muy común.

Te puede interesar:  ¿Cómo Hacer Gráficas En Excel?, descúbrelo aquí

Si necesitas descargar algo desde Internet sin abrir el navegador, wget permite bajar archivos mediante HTTP o HTTPS. Basta con pasarle la URL: wget https://servidor/ruta/fichero.py. Tiene una cantidad enorme de flags para continuar descargas cortadas, limitar ancho de banda, descargar sitios enteros, etc.

Para sincronizar directorios locales y remotos de forma eficiente, rsync es una herramienta potentísima. Su filosofía es copiar solo los archivos nuevos o cambiados, evitando transferir todo cada vez. Es muy típica la combinación -avuz para copiar preservando atributos, mostrando progreso, omitiendo archivos más nuevos en el destino y comprimiendo durante el envío.

Además, rsync permite cosas bastante finas: incluir o excluir ciertos patrones de archivo, generar solo la lista de lo que se copiaría sin hacerlo realmente (modo “simulación”), limitar el tamaño de ficheros a copiar o, si lo necesitas, borrar los originales de la fuente con --remove-source-files una vez transferidos (ideal para liberar espacio, pero conviene probar primero sin ese flag).

Cuando lo que quieres es localizar archivos en una jerarquía compleja, find recorre directorios buscando según el criterio que le marques: nombre, extensión, tipo (archivo, directorio, enlace…), tamaño, fecha de modificación… Algo como find ./ -type f -name "*.py" te lista todos los scripts de Python bajo el directorio actual, y find ./ -name "long.txt" te da la ruta de ese archivo concreto.

Otras utilidades útiles: vim, history, passwd, shred, unzip, column

Antes o después acabarás editando archivos de configuración desde la consola. vim es uno de los editores más veteranos y al mismo tiempo más potentes. La curva de aprendizaje tiene fama de dura —la prueba son las miles de visitas a la pregunta “cómo salir de Vim”—, pero dominar sus modos y atajos marca un antes y un después en tu velocidad editando. Lo arrancas simplemente con vim o vim fichero.

Para revisar lo que has ido tecleando a lo largo del tiempo, history muestra una lista numerada de comandos anteriores. Cada línea tiene un identificador que luego puedes reutilizar para repetir órdenes sin reescribirlas, como veremos en la sección de trucos avanzados.

El comando passwd sirve para cambiar la contraseña de tu cuenta (o de otras, si eres administrador). Primero te pide la clave actual y luego la nueva dos veces. Hay que ir con cuidado, porque si te equivocas al cambiarla puedes dejarte sin acceso. Lo normal es lanzarlo como usuario normal con passwd.

Cuando necesitas hacer prácticamente irrecuparable un archivo, shred lo sobrescribe varias veces con datos aleatorios antes de borrarlo. Es una forma de poner más difícil su recuperación en discos magnéticos tradicionales. Un uso típico sería shred -u fichero_sensible, donde -u además elimina el archivo tras sobrescribirlo.

Por último, una joya poco conocida: column. Esta utilidad permite formatear la salida de otros comandos en columnas alineadas, lo que la hace mucho más legible. Si, por ejemplo, pasas el resultado de mount por | column -t, en lugar de ver un batiburrillo de espacios tendrás todas las columnas ordenaditas. El delimitador por defecto es el espacio, pero con -s puedes cambiarlo.

Trucos de navegación rápida por directorios

La productividad en la terminal no solo va de saber muchos comandos, sino de reducir al mínimo lo que teclear. Hay varios atajos que agilizan muchísimo moverte por el sistema de archivos.

Ya hemos visto que cd - te devuelve al directorio anterior, que cd y cd ~ te llevan directo a /home/usuario y que cd .. sube un nivel. Si vas saltando entre dos rutas constantemente, alternar con cd - es casi como tener un “Alt+Tab” de carpetas.

Otro truco clásico es usar pushd y popd para gestionar una “pila” de directorios. Con pushd ruta saltas a esa ruta y la guardas en la pila, y con popd vuelves al último directorio guardado. Es muy práctico cuando alternas entre varios árboles de directorios de forma recurrente.

Trucos para ejecutar comandos mucho más rápido

La mayoría de shells modernas (Bash, Zsh…) incorporan un historial muy potente. No se trata solo de pulsar la flecha hacia arriba: hay toda una serie de expansiones de historial que te permiten reutilizar comandos recién ejecutados sin volver a escribirlos.

El primero que todo el mundo aprende es !!, que representa el último comando ejecutado. Por ejemplo, si intentas hacer apt update sin sudo y te da error de permisos, puedes corregirlo al vuelo con sudo !!. El shell expandirá !! al comando anterior completo, de modo que lo que realmente se ejecuta es sudo apt update.

También puedes referirte al penúltimo, antepenúltimo, etc. con sintaxis como !-2, !-3, y así sucesivamente. Esto resulta útil si acabas de lanzar varias órdenes y quieres repetir una de hace dos o tres pasos atrás sin buscarla a mano.

Si conoces el número de una entrada en el historial (el que aparece a la izquierda al ejecutar history), puedes ejecutarla directamente con !número. Por ejemplo, !526 lanzará el comando cuya línea en history es la 526, sea la que sea.

Hay más atajos finos: !* expande todos los argumentos del comando anterior excepto la primera palabra. Si antes pusiste sudo bash script.sh y luego quieres repetirlo sin sudo, !* se convertirá en bash script.sh. Variantes como !!* o las sustituciones con ^texto_viejo^texto_nuevo permiten reemplazar rápidamente partes de una orden sin reescribirla entera.

Combinar varias órdenes en una sola línea

En Linux es muy habitual encadenar varias acciones en un mismo comando. El separador ; hace que las órdenes se ejecuten una detrás de otra sin importar si alguna falla. Por ejemplo: sudo apt update; sudo apt upgrade primero refresca repositorios y luego actualiza paquetes.

Si quieres que la segunda solo se ejecute si la primera tiene éxito (es decir, devuelve código de salida cero), usas &&. Así, sudo apt update && sudo apt upgrade solo se lanzará la actualización si apt update no ha fallado. Es una forma sencilla de construir “pipelines” de comandos robustos.

Esto se aprecia bien en ejemplos como ls /ruta/inexistente && echo "ok". Como la ruta no existe, ls falla y la cadena con echo no se ejecuta. En cambio, si usas ; en vez de &&, el echo se ejecutará de todas formas.

Te puede interesar:  Cómo quitar clave de Windows 10

Autocompletado, historial con flechas y alias

La tecla TAB es una de las mejores amigas del usuario de la terminal. Cuando empiezas a escribir un comando o una ruta y pulsas TAB, el shell intenta autocompletar lo que falte. Si solo hay una posibilidad, la rellena entera. Si hay varias, una pulsación doble de TAB muestra una lista de opciones.

Imagina que quieres entrar en /home/joan. Escribes cd /h y pulsas TAB; el shell completa a /home/. Luego escribes j y vuelves a pulsar TAB. Si solo existe joan, se completará la ruta entera. Si también hubiera un jorge, con doble TAB verías ambas opciones y podrías seguir escribiendo hasta desambiguar. Lo mismo funciona con nombres de comandos, no solo con rutas.

Las flechas y recorren tu historial de comandos hacia atrás y hacia delante. Es la forma más rápida de repetir algo que acabas de usar hace unos segundos. Simplemente pulsas flecha arriba hasta encontrar lo que te interesa, lo editas si hace falta y presionas Enter.

Para no tener que recordar siempre cadenas largas, los alias son mano de santo. Puedes definirlos temporalmente en la sesión actual con alias corto="comando largo y opciones", y de forma permanente añadiéndolos a ficheros como ~/.bashrc o ~/.zshrc. Así conviertes, por ejemplo, sudo apt update && sudo apt upgrade en algo tan breve como actu.

Limpiar, editar y moverte dentro de la línea de comandos

Otra parte clave de ser rápido en la consola es dominar los atajos de teclado dentro de la línea actual. La mayoría de emuladores de terminal usan atajos tipo Emacs, aunque algunos permiten activarlos al estilo Vim.

Para “limpiar” la pantalla sin borrar realmente el historial de la sesión tienes clear o el atajo Ctrl + L. Lo que hacen es desplazar la vista hacia arriba; si haces scroll con la rueda del ratón, seguirás pudiendo ver el contenido anterior.

Si quieres borrar todo lo que ha mostrado la terminal en esa sesión, reset reinicia el emulador, como si lo cerraras y abrieras de nuevo. Tras eso, aunque hagas scroll, no verás nada de lo que había antes.

A la hora de editar la línea actual, Ctrl + U borra todo lo que hay desde el punto donde está el cursor hasta el inicio de la línea, mientras que Ctrl + K hace justo lo contrario: elimina desde el cursor hasta el final. Esto va genial cuando has escrito un comando largo y quieres modificar solo una parte sin estar borrando carácter a carácter.

Para saltar al inicio de la línea puedes usar Ctrl + A o la tecla Inicio; para ir al final, Ctrl + E o Fin. Y si quieres moverte palabra a palabra, los atajos habituales son Alt + F (hacia delante) y Alt + B (hacia atrás). Todo esto te permite reposicionar el cursor muy rápido sin tocar el ratón.

Cuando la salida de un comando es muy larga y no cabe en pantalla, muchos emuladores permiten hacer scroll con el teclado usando combinaciones como Ctrl + Mayús + RePág y Ctrl + Mayús + AvPág. Así puedes revisar cómodamente sin mover la mano del teclado.

Trabajar con pestañas, fuente y accesibilidad en la terminal

Los emuladores modernos soportan pestañas múltiples, igual que un navegador. Para abrir una pestaña nueva suele funcionar Ctrl + Mayús + T, mientras que para moverte entre ellas puedes usar combinaciones del estilo Ctrl + Mayús + flechas o, según el programa, Ctrl + RePág y Ctrl + AvPág.

Para cerrar la pestaña activa, además de escribir exit, suelen existir atajos como Ctrl + Mayús + W o Ctrl + D. Conviene revisar la configuración de tu emulador concreto, porque muchos permiten personalizar todos estos atajos a tu gusto.

Si necesitas aumentar o reducir el tamaño del texto rápidamente, la mayoría soportan Ctrl + Mayús + “+” para agrandar y Ctrl + Mayús + “-” para disminuir. Para poner la terminal a pantalla completa (algo muy cómodo cuando trabajas solo con texto) suele funcionar la tecla F11.

Hay incluso atajos menos conocidos como Ctrl + S para “pausar” la terminal (bloquea temporalmente la salida) y Ctrl + Q para reanudarla. Y no olvides que casi todos los emuladores dejan cambiar el esquema de colores, la tipografía y el tamaño: encontrar una combinación cómoda para tus ojos marca mucho la experiencia de uso.

Cuando la salida de un comando es especialmente caótica, herramientas como column te ayudan a presentar la información de manera ordenada. Piping de cosas como mount a column -t convierte una sopa de espacios en columnas perfectamente alineadas, que se leen de un vistazo.

Gestión de tareas en segundo plano desde la terminal

La terminal de Linux no solo sirve para lanzar comandos y esperar. También es capaz de gestionar trabajos en segundo plano y multitarea ligera sin abrir nuevas ventanas.

Cuando ejecutas algo largo, puedes mandarlo al fondo añadiendo un & al final: comando_largo &. Para ver qué trabajos hay en segundo plano, jobs lista todos con sus IDs. Con fg traes un trabajo al primer plano (interactivo) y con bg lo dejas seguir ejecutándose en segundo plano si estaba parado.

Si quieres “desvincular” un proceso de la terminal para que no muera aunque cierres la ventana, tienes disown en shells como Bash o Zsh. Y si algo se queda colgado irreversiblemente, siempre puedes recurrir a kill o killall, como comentábamos antes.

En combinación con esto, aprender a usar bien history, ps, htop, grep y tail -f te permite vigilar servicios, logs y procesos en tiempo real sin depender de herramientas gráficas.

Con todos estos comandos, trucos de historial, atajos de edición, gestión de pestañas y utilidades extra como rsync, find, column o neofetch, tienes un arsenal más que decente para sentirte cómodo en la terminal de Linux. Al principio puede abrumar, pero en cuanto interiorizas unas cuantas combinaciones clave, descubres que es una forma de trabajar más rápida, precisa y hasta divertida que andar saltando de ventana en ventana con el ratón.