Comandos de terminal que todo programador debería memorizar

Por Gonzalo Rodríguez de Austria · Publicado el 2026-09-02 16:05:46 · Actualizado el 2026-09-22 10:06:00 · 6 min de lectura

Trabajar desde la terminal es más rápido que hacer clic por carpetas, una vez le coges el truco — y es prácticamente obligatorio en cuanto empiezas a usar Git, Node o cualquier framework mínimamente serio. Aquí van los comandos que de verdad vas a teclear todos los días, en Windows y en Mac/Linux.

Moverte entre carpetas

cd nombre-carpeta entra en una carpeta, y cd .. sube un nivel. Si escribes cd sin nada más, en Windows te muestra en qué carpeta estás; en Mac/Linux, para eso existe pwd (de "print working directory").

Un truco que ahorra muchísimo tiempo y que casi nunca se menciona: la tecla Tab autocompleta nombres de archivos y carpetas mientras escribes. Si estás en una carpeta con documentos-clase y escribes cd doc y pulsas Tab, la terminal completa el nombre por ti. Funciona igual en CMD, PowerShell y en Mac/Linux — apréndelo ya, porque te vas a ahorrar cientos de errores de escritura.

Ver qué hay en la carpeta actual

En Windows (CMD), dir lista los archivos y carpetas. En Mac/Linux, el equivalente es ls. Si quieres ver también los archivos ocultos (por ejemplo, el .git de un repositorio o el .env de un proyecto), añade /a en Windows (dir /a) o -la en Mac/Linux (ls -la).

Crear archivos y carpetas

mkdir nombre crea una carpeta nueva. Para crear un archivo vacío rápidamente, en Windows puedes usar type nul > archivo.txt, y en Mac/Linux, touch archivo.txt.

Si necesitas crear varias carpetas anidadas de golpe (por ejemplo, proyecto/src/componentes), en Windows basta con mkdir proyecto\src\componentes — crea las tres a la vez. En Mac/Linux necesitas avisar explícitamente con mkdir -p proyecto/src/componentes (la -p es de "parents"); sin ella, solo te deja crear una carpeta si la de arriba ya existe.

Copiar, mover y renombrar

Esto es lo que más se echa en falta en cualquier chuleta corta de terminal, y es de lo primero que vas a necesitar de verdad.

Para copiar un archivo: en Windows, copy origen.txt destino.txt; en Mac/Linux, cp origen.txt destino.txt. Para copiar una carpeta entera con todo su contenido, en Mac/Linux añades -r (de "recursivo"): cp -r carpeta-origen carpeta-destino. En Windows es más incómodo — el comando clásico es xcopy carpeta-origen carpeta-destino /E /I — así que para copiar carpetas completas mucha gente prefiere directamente arrastrar y soltar desde el explorador de archivos, y dejar la terminal para archivos sueltos.

Para mover o renombrar: en Mac/Linux, mv sirve para las dos cosas — mover un archivo a otra carpeta y cambiarle el nombre son, en el fondo, la misma operación (mv archivo.txt carpeta/archivo.txt lo mueve; mv nombre-viejo.txt nombre-nuevo.txt lo renombra). En Windows hay dos comandos separados: move para mover, y ren (de "rename") para renombrar — aunque move también puede renombrar si le das origen y destino dentro de la misma carpeta.

Ver el contenido de un archivo sin abrirlo

Cuando solo quieres echar un vistazo rápido a un archivo de texto (un .env.example, un package.json) sin abrir el editor: en Windows, type archivo.txt; en Mac/Linux, cat archivo.txt. Para archivos largos, mejor abrirlos en el editor — esto es solo para una comprobación rápida.

Borrar archivos y carpetas

del archivo.txt en Windows, rm archivo.txt en Mac/Linux, borran un archivo. Para borrar una carpeta con todo su contenido: rmdir /s carpeta en Windows (te pedirá confirmación), o rm -r carpeta en Mac/Linux.

Una advertencia que merece la pena repetir aunque parezca obvia: borrar desde la terminal no manda nada a la papelera de reciclaje. Se borra directamente y no hay "deshacer". Antes de borrar una carpeta con rm -r o rmdir /s, comprueba con dir o ls que estás en la carpeta correcta y que es de verdad lo que quieres borrar.

Limpiar la pantalla

Cuando la terminal se llena de texto, cls (Windows) o clear (Mac/Linux) la deja limpia sin perder el historial de comandos ya ejecutados.

Repetir y encadenar comandos

La flecha hacia arriba del teclado navega por el historial de comandos que ya has escrito, así no tienes que volver a teclearlos — funciona igual en Windows y en Mac/Linux.

Otro truco útil: puedes encadenar varios comandos en una sola línea con &&, y el segundo solo se ejecuta si el primero termina bien. Por ejemplo, cd mi-proyecto && dir entra en la carpeta y, si existe, lista su contenido en el mismo paso. Funciona igual en CMD, PowerShell, y en la terminal de Mac/Linux.

Un flujo real: crear un proyecto desde cero

Para verlo todo junto, así es como se ve un flujo real usando varios de estos comandos seguidos — por ejemplo, al arrancar un proyecto de Node nuevo:

mkdir mi-proyecto
cd mi-proyecto
npm init -y
mkdir src
type nul > src/index.js
dir

(En Mac/Linux, las únicas líneas que cambian son mkdir -p src si quisieras anidar más carpetas, touch src/index.js en vez del type nul, y ls en vez de dir.)

Errores típicos al empezar

  • Confiar en que Mac/Linux no distingue mayúsculas de minúsculas. Sí lo hace: Carpeta y carpeta son dos cosas distintas. En Windows, en cambio, da igual cómo lo escribas. Esto pilla a mucha gente cuando su código funciona en su ordenador (Windows) y falla al subirlo a un servidor (Linux).
  • Rutas con espacios sin comillas. Si una carpeta se llama Mis Documentos, escribir cd Mis Documentos falla — hay que ponerlo entre comillas: cd "Mis Documentos".
  • Ejecutar un comando pensando que estás en otra carpeta. Antes de borrar, mover o instalar algo, un dir o ls rápido para confirmar dónde estás evita la mayoría de sustos.

En resumen

Con estos comandos ya cubres el 90% del uso diario de una terminal: moverte, mirar qué hay, crear, copiar, mover, renombrar y borrar. El resto lo vas incorporando de forma natural según lo necesites, como te ha pasado con npm start o git push en este mismo proyecto — que por cierto, si todavía te cuesta el flujo de Git, tienes una guía completa paso a paso aquí mismo en el blog.

Y ya que hablamos de git push: antes de subir cualquier proyecto asegúrate de que tus claves y contraseñas no viajan con él — así se protegen con variables de entorno.

Tambien te puede interesar

Comentarios

Todavía no hay comentarios. ¡Sé el primero en opinar!

Deja tu comentario