Guía de Comandos para la Terminal de Mac & Linux
Autor: Diego Cuevas
Publicado originalmente: 11 March 2022
La Terminal! Aquella app mítica que tal vez te encuentres explorando las apps que hay en tu Mac o PC con Linux. Para la mayoría de las personas este
es un programa que probablemente nunca usarán, pero para un programador ese es el lugar donde vivirán por el resto de sus días. Aquí hay una lista
de comandos y shortcuts útiles para usar mientras se trabaja en la Terminal:
Shortcuts:
- Tab -> Auto-completar nombres de archivos y directorios
- Ctrl + A -> Ir al inicio de la línea
- Ctrl + E -> Ir al final de la línea
- Ctrl + L -> Limpiar pantalla
- Ctrl + C -> Detener procesos en ejecución
Básico:
sudo
-> Ejecutar con privilegios de seguridad de administrador/super-userman [cmd]
-> Mostrar página del manual del comando especificadopwd
-> Mostrar camino actualdate
-> Mostrar fecha actualcal
-> Mostrar calendario del mes actual
Manejo de directorios:
cd [dir]
-> Entrar a directorio, usa apóstrofes para nombres con espacioscd ..
-> Retroceder de directoriocd ../..
-> Retroceder dos directoriosls
-> Mostrar lista de subdirectorios y archivos:-a
-> También mostrar items ocultos,-l
-> Listado largo,-h
-> Mostrar tamaños de archivos,-t
-> Listar según modificados recientemente,-s
-> Acomodar por tamaños.mkdir [dir]
-> Crear directoriormdir [dir]
-> Eliminar directorio, sólo funciona con directorios vacíosrm -r [dir]
-> Eliminar directorios y sus contenidosmv [dir] [otherDir]
-> Mover directorio a otro directorio o subdirectoriomv [dir] [newDirName]
-> Renombrar directorio
Manejo de archivos:
./[exec]
-> Correr archivo ejecutableopen [file]
-> Abrir archivo:-a
-> Especificar app (Mac)cp [file] [dir]
-> Copiar archivo a directoriorm [file]
-> Eliminar archivo:-i
-> Pedir confirmación,-f
-> Forzar eliminaciónmv [file] [newfile]
-> Renombrar archivomv [file] [dir]
-> Mover archivo a otro directorio o subdirectoriocat > [file]
-> Crear archivo de texto e insertar texto, es recomendable especificar la extensión del archivocat [file]
-> Mostrar archivo de textohead [file]
-> Mostrar las primeras 10 líneas de un archivo de texto:-n
-> Mostrar primeras “n” líneas de un archivo de textotail [file]
-> Mostrar las últimas 10 líneas de un archivo de texto:-n
-> Mostrar últimas “n” líneas de un archivo de textowc [file]
-> Contador de palabras, muestra el número de líneas, palabras y caracteres en ese orden:-l
-> Muestra sólo el número de líneas,-w
-> Muestra sólo el número de palabras,-c
-> Muestra sólo el número de caracteres.
Permisos:
chmod
-> Cambia los permisos de un archivo, directorio, link o ejecutable. Usa códigos para activar diferentes configuraciones de permisos: r = 4, w = 2, x = 1, la suma va a generar el código para los permisos de cada uno de los tres grupos de permisos: usuarios, grupos y otros.
Manejo de discos:
diskutil
-> Utilidad de Discos (Mac)cd /volumes/[drive]
-> Accesar memorias USB, tarjetas SD o discos duros (Mac)
Manejo de paquetes:
port
-> Administrador de paquetes MacPorts:install [package]
-> Instalar paquete,uninstall [package]
-> Desinstalar paquete (Mac)*brew
-> Administrador de paquetes Homebrew :install [package]
-> Instalar paquete,uninstall [package]
-> Desinstalar paquete (Mac)*apt
-> Administrador de paquetes Apt:install [package]
-> Instalar paquete,remove [package]
-> Desinstalar paquete (Linux: Ubuntu, Mint, Kali)apk
-> Administrador de paquetes Apk:add [package]
-> Instalar paquete,del [package]
-> Desinstalar paquete (Linux: Alpine)
Extra:
shutdown
-> Apagar la computadora,-h [hh:mm]
-> Apagar la computadoraa una hora específicasay [word(s)]
-> Utilidad Text-to-speech (Mac)espeak [word(s)]
-> Utilidad Text-to-speech (Linux)*
Git:
git init
-> Inicializar repositorio.git add .
-> Agregar todos los archivos que aún no están siendo monitoreados al repositoriogit status
-> Checar el estatus del repositoriogit commit -m "[message]"
-> Hacer una contribución al repositorio y agregar un mensajegit log
-> Mostrar la bitácora de contribucionesgit checkout .
-> Revertir al estado de la última contribucióngit merge [branch]
-> Combinar la rama actual con otra [branch]
*Usualmente no vienen pre-instalados con el sistema