Saltar al contenido
jungladigital

Que la terminal escriba por ti

Rutas con espacios y tildes escritas a mano: el error más común de la terminal. Tab las completa, arrastrar una carpeta las deletrea y la flecha arriba repite lo que ya escribiste. Tres teclas que escriben por ti.

La tecla Tab en verde sobre fondo oscuro: que la terminal escriba por ti

Al cerrar el primer sendero ya te movías por tus carpetas y hasta tenías un comando con tu nombre. Este sendero es más corto y más físico: diez atajos de teclado que uso todos los días, uno por cada dolor. Empieza por el más frecuente, escribir una ruta a mano. El proyecto que nos acompaña es la carpeta de la barbería de la esquina, en Documentos (que por dentro se llama Documents), con las fotos del local y el menú de precios. Nombres con espacios y tildes, como los pone cualquier persona.

Este artículo se adapta a tu sistema

La ruta que duele

Entras a la carpeta como la escribirías en un mensaje:

~/Documents
$ lsbarbería la esquina$ cd barbería la esquinacd: too many arguments

Tres palabras, y la terminal entendió tres cosas distintas.


Para la terminal, el espacio separa argumentos. «barbería la esquina» son tres nombres, y cd solo espera uno (en PowerShell la queja es otra, más larga, pero el problema es el mismo). La forma correcta lleva una barra invertida antes de cada espacio, barbería\ la\ esquina, y encima está la tilde, que en muchos teclados hay que pulsar dos veces. Nadie quiere escribir eso. Y nadie tiene que hacerlo: para esto existe Tab.

Tab: dos letras y confirmar

Lo mismo, dejando que la terminal escriba:

Mac
~/Documents
🖱 Con clics sería…
  1. Doble clic en «barbería la esquina»
  2. Doble clic en «fotos del local»
$ cd barbería\ la\ esquina/$ lsfotos del localmenú de precios.txtsobre la barbería.txt$ cd fotos\ del\ local/$ lsbarba y toalla caliente.jpgcorte clásico.jpgdegradado.jpgfachada.jpgsillón 1.jpgsillón 2.jpg
⌨ Teclas de esta sesión: ⇥ Tab

Dos letras, Tab, y las barras, los espacios y la tilde los puso la terminal.

Windows

~\Documents
🖱 Con clics sería…
  1. Doble clic en «barbería la esquina»
  2. Doble clic en «fotos del local»
$ cd '.\barbería la esquina\'$ cd '.\fotos del local\'
⌨ Teclas de esta sesión: ⇥ Tab

Dos letras, Tab, y las comillas, los espacios y la tilde los puso PowerShell.


La regla: escribe las primeras letras y presiona Tab. Si solo hay un nombre que empiece así, la terminal lo completa entero, con la barra final si es una carpeta. Ya lo habías visto con Documentos en tus primeros 10 comandos; la diferencia es que aquí Tab también resuelve lo feo. Cada \ que ves en Mac es la terminal diciendo «este espacio es parte del nombre», y las comillas de Windows dicen lo mismo. Tú no lo escribes, y no te equivocas, porque el nombre lo pone quien lo conoce de verdad.

Cuando hay más de una

Dos fotos empiezan igual:

Mac
~/Documents/barbería la esquina/fotos del local
$ ls sillón\ 1.jpgsillón 1.jpg
⌨ Teclas de esta sesión: ⇥ Tab ⏎ Enter

El primer Tab completa lo que las dos comparten; el segundo te enseña las opciones.

Windows

~\Documents\barbería la esquina\fotos del local
$ ls '.\sillón 1.jpg'
⌨ Teclas de esta sesión: ⇥ Tab Shift+Tab

Tab pone una candidata tras otra; Shift+Tab vuelve a la anterior.


Cuando Tab se detiene no falló: llegó hasta donde los nombres coinciden y espera que decidas. En Mac, un Tab más muestra la lista, y a partir de ahí cada Tab va tomando una opción por turno; cuando aparece la que querías, das Enter o sigues escribiendo. Es la misma tecla con dos respuestas: completa si puede, pregunta si no. Y completa comandos igual que nombres de archivos: whoa y Tab te dan whoami entero (en Windows, whoami.exe, el mismo programa con apellido).

Windows

En Windows, Tab no muestra la lista, pero la lista existe y tiene otra tecla: Ctrl+Espacio abre un menú con todas las opciones para elegir con las flechas. Si te acostumbras a Tab a secas, nunca ves las opciones que descartaste; con el menú, sí.

Arrastra la carpeta a la ventana

Cuando la carpeta está lejos, ni siquiera hacen falta las dos letras:

Mac
~ (tu carpeta de casa)
$ ls /Users/ana/Documents/barbería\ la\ esquina/fotos\ del\ localbarba y toalla caliente.jpgcorte clásico.jpgdegradado.jpgfachada.jpgsillón 1.jpgsillón 2.jpg
⌨ Teclas de esta sesión: 🖱 Soltar en la ventana

La ruta completa, desde tu carpeta de casa, con cada espacio protegido. Sin escribir una letra.

Windows

~ (tu carpeta de casa)
$ ls "C:\Users\ana\Documents\barbería la esquina\fotos del local"
⌨ Teclas de esta sesión: 🖱 Soltar en la ventana

La ruta completa, entre comillas para proteger los espacios. Sin escribir una letra.


Es el puente más simple entre las dos ventanas: buscas la carpeta como siempre, con el Finder o el Explorador, y la terminal se encarga de deletrearla. Funciona también con archivos, y es la forma más rápida de darle a un comando algo que está en otro disco o en el escritorio. Lo único que tienes que recordar es el espacio después del comando, antes de soltar. Si ya estás dentro de la carpeta, Tab sigue siendo más rápido; arrastrar gana cuando lo que buscas está en otra parte.

Flecha arriba, otra vez

Y el atajo que más vas a usar en tu vida, para no reescribir nada:

~/Documents/barbería la esquina
🖱 Con clics sería…
  1. No hay forma de repetir con el mouse
$ ls fotos\ del\ local/fachada.jpgfotos del local/fachada.jpg$ ls fotos\ del\ local/fachada.jpgfotos del local/fachada.jpg
⌨ Teclas de esta sesión:

recorre lo que ya escribiste, de lo más reciente hacia atrás; vuelve.


Lo conociste en el primer sendero y ahora tiene un uso nuevo: traer un comando largo para cambiarle una sola cosa, que es el tema de la tercera parada. Mientras tanto, la costumbre que vale la pena: antes de escribir un comando que ya escribiste, .

Seamos justos con el mouse. Para entrar a una carpeta, el doble clic empata con Tab, y si la carpeta está en la barra lateral del Finder, gana. Tab gana cuando la ruta tiene que ir dentro de un comando, y gana siempre, porque con el mouse no hay forma de repetir lo que hiciste hace un minuto.

Tres teclas que escriben por ti. En la próxima parada, las que te sacan de cualquier lado sin cerrar la ventana.