Comandos de Terminal para Mac

Comandos Terminal macOS

A través de comandos de Terminal para Mac podemos realizar acciones que, en determinadas ocasiones, no se encuentran disponibles a través de la interfaz gráfica de macOS o bien, el proceso para hacerlo a cabo es muy lento y laborioso.

Los comandos de Terminal para Mac, funcionan en todas las versiones de macOS que ha lanzado, prácticamente, desde la primera versión. Si quieres comenzar a utilizarlos y sacarle el máximo partido, te invito a que sigas leyendo.

Hay que tener en cuenta que con los comandos de Terminal para Mac puedes realizar cambios en tu equipo, cambios de configuración que pueden afectar al funcionamiento de tu equipo.

Además, también puedes borrar archivos, crear directorios, conocer que dispositivos están conectados a tu red, realizar búsquedas

Si ya conoces los comandos del sistema en Windows (que proceden de MS-DOS) no te costará mucho aprender a utilizar los comandos de Terminal para Mac que os mostramos en este artículo.

Cómo acceder a Terminal

acceder a Terminal

Lo primero que debemos hacer para poder comenzar a trastear las tripas de macOS es acceder a la línea de comandos de macOS. Para comenzar a utilizar los comandos de Terminal en Mac debemos realizar los siguientes pasos:

  • Pulsamos el atajo de teclado Command + barra espaciadora.
  • Escribimos Terminal.
  • Pulsamos sobre el primer resultado de la búsqueda.

Esta aplicación también se encuentra en el Launchpad, dentro de la carpeta Otros. Si te gusta la idea de trabajar con comandos, puedes pegarle un vistazo a un artículo donde os mostramos los mejores atajos de teclado para Mac.

Comandos básicos de Terminal

[table]

,,

/ (Forward Slash),Directorio de nivel superior

.,Directorio actual

..,Directorio superior

~,Directorio principal

sudo [command],Ejecutar comando con los privilegios de seguridad del superusuario

nano [file],Abre el editor de la Terminal

open [file],Abrir un archivo

[command] -h,Obtener ayuda sobre un comando

man [command],Muestra el manual de ayuda del comando

,,

[/table]

Búsqueda en Terminal

[table]

,,

«find <dir> -name <«»file»»>»,Busca todos los archivos llamados <archivo> dentro de <dir>. Podemos utilizar los asteriscos (*) para buscar partes de nombres de archivos

«grep «»<text>»» <file>»,Busca todas las coincidencias de <texto> dentro de <fichero>

«grep -rl «»<text>»» <dir>»,Busca todos los archivos que contengan <texto> dentro de <dir>

,,

[/table]

Gestión de Permisos en Terminal

Permisos de Terminal

[table]

,,

ls -ld,Muestra el permiso por defecto de un directorio de origen

ls -ld/<dir>,Muestra los permisos de lectura; escritura y acceso de una carpeta determinada

chmod 755 <file>,Cambia el permiso de un archivo a 755

chmod -R 600 <dir>,Cambia el permiso de una carpeta y todo su contenido a 600

chown <user>:<group> <file>,Cambia la propiedad de un archivo a usuario y grupo Si añadimos el comando «-R» se incluirá el contenido de la carpeta

,,

[/table]

Tamaño de los archivos y espacio en disco

[table]

,,

du,Uso de la lista para cada subdirectorio y su contenido

du -sh [folder],Salida legible de todos los archivos de un directorio

du -s,Mostrar una entrada para cada archivo especificado

du -sk* | sort -nr,Listar archivos y carpetas (resumiendo el tamaño incluyendo las subcarpetas). Podemos sustituir sk* por sm* para listar los directorios en MB

df -h,Muestra el espacio libre en disco de su sistema

df -H,Calcula el espacio libre en disco en potencias de 1.000 (en lugar de 1.024)

,,

[/table]

Gestión de archivos y directorios

[table]

,,

mkdir <dir>,Crea una nueva carpeta llamada <dir>

mkdir -p <dir>/<dir>,Crea carpetas anidadas

mkdir <dir1> <dir2> <dir3>,Crea varias carpetas a la vez

«mkdir «»<dir>»»»,Crea una carpeta con un espacio en el nombre del archivo

rmdir <dir>,Elimina una carpeta (únicamente funciona con carpetas vacías)

rm -R <dir>,Elimina una carpeta y su contenido

touch <file>,Crea un nuevo archivo sin ninguna extensión

cp <file> <dir>,Copiar un archivo en la carpeta

cp <file> <newfile>,Copiar un archivo en la carpeta actual

cp <file>~/<dir>/<newfile>,Copiar un archivo en la carpeta y cambiar el nombre del archivo copiado

«cp -R <dir> <«»new dir»»>»,Copiar una carpeta en una nueva carpeta con espacios en el nombre del archivo

cp -i <file><dir>,Le avisa antes de copiar un archivo con un mensaje de advertencia de sobrescritura

cp <file1> <file2> <file3>/Users/<dir>,Copia varios archivos en una carpeta

ditto -V [folder path][new folder],Copia el contenido de una carpeta a una nueva carpeta. El comando «-V» muestra una línea de estado por cada archivo copiado.

rm <file>,Borra un archivo de forma permanente

rm -i <file>,Borra un archivo solicitando confirmación

rm -f <file>,Fuerza la eliminación sin confirmación de un archivo

rm <file1> <file2> <file3>,Borrar varios archivos sin confirmación

mv <file> <newfilename>,Mover/renombrar

mv <file> <dir>,Mueve un archivo a la carpeta (sobreescribiendo el archivo existente con el mismo nombre si existiera)

mv -i <file> <dir>,El comando «-i» muestra un aviso informando que va a sobreescribir el archivo de destino.

mv *.png ~/<dir>,Mueve todos los archivos PNG de la carpeta actual a una carpeta diferente

,,

[/table]

Gestión de directorios con Terminal

[table]

,,

cd,Directorio de inicio

cd [folder],Cambiar de directorio

cd ~,Directorio principal

cd/,Raíz de la unidad

cd -,Directorio o carpeta anterior por la que ha navegado por última vez

pwd,Mostrar el directorio de trabajo

cd..,Subir al directorio principal

cd../..,Subir dos niveles

,,

[/table]

Listado de archivos y directorios con Terminal

archivos y directorios de Terminal

[table]

,,

ls,Mostrar el nombre de los archivos y subdirectorios del directorio

ls -C,Mostrar el nombre de los archivos y subdirectorios del directorio en columnas

ls -a,Listar todas las entradas (incluyendo las que tienen .(punto) y ..(doble punto))

ls -1,Mostrar la lista de archivos en formato de una entrada por línea

ls -F,Mostrar una / (barra) inmediatamente después de cada ruta que sea un directorio

ls -S,Ordenar los archivos o entradas por tamaño

ls -l,Lista en formato largo. Incluye el modo de archivo; el nombre del propietario y del grupo; la fecha y la hora en que se modificó el archivo; el nombre de la ruta; etc.

ls -l /,Lista del sistema de archivos desde la raíz con enlaces simbólicos

ls -lt,Lista de los archivos ordenados por tiempo de modificación (el más reciente primero)

ls -lh,Listado largo con tamaños de archivos legibles en KB; MB o GB

ls -lo,Lista de los nombres de archivos con tamaño; propietario y banderas

ls -la,Lista detallada del contenido de los directorios  (incluidos los archivos ocultos)

,,

[/table]

Atajos de teclado en Terminal

[table]

,,

Tab,Autocompletar nombres de archivos y carpetas

Ctrl + A,Ir al principio de la línea en la que estás escribiendo

Ctrl + E,Ir al final de la línea en la que estás escribiendo

Ctrl + U,Borrar la línea anterior al cursor

Ctrl + K,Borrar la línea después del cursor

Ctrl + W,Borrar la palabra antes del cursor

Ctrl + T,Intercambiar los dos últimos caracteres antes del cursor

Esc + T,Intercambiar las dos últimas palabras antes del cursor

Ctrl + L,Borrar la pantalla

Ctrl + C,Detener lo que se esté ejecutando

Ctrl + D,Salir del shell actual

Option + →,Mover el cursor una palabra hacia adelante

Option + ←,Mover el cursor una palabra hacia atrás

Ctrl + F,Mover el cursor un carácter hacia adelante

Ctrl + B,Mover el cursor un carácter hacia atrás

Ctrl + Y,Pegar lo que fue cortado por el último comando

Ctrl + Z,Poner lo que se está ejecutando en un proceso de fondo suspendido

Ctrl + _,Deshacer el último comando

Option + Shift + Cmd + C,Copiar texto plano

Shift + Cmd + V,Pegar la selección

exit,Terminar una sesión de shell

,,

[/table]

Historial de comandos

[table]

,,

Ctrl + R,Búsqueda de comandos utilizados anteriormente

history,Muestra los comandos que hemos escrito previamente

![value],Ejecuta el último comando utilizado que comienza con un valor

!!,Ejecuta el último comando utilizado

,,

[/table]

Procesos de Terminal

Procesos terminal

[table]

,,

ps -ax,Muestra los procesos que se están ejecutando actualmente. El comando «a» muestra los procesos de todos los usuarios y el comando «x» muestra los procesos que no están conectados con la Terminal

ps -aux,Muestra todos los procesos con %cpu; %mem; page in y PID

top,Muestra información en tiempo real sobre los procesos que se están ejecutando

top -ocpu -s 5,Muestra los procesos ordenados por el uso de la CPU y actualizándose cada 5 segundos

top -o rsize,Ordena los procesos por uso de memoria

kill PID,Salir del proceso con ID <PID>. El PID se mostrará como una columna en el Monitor de Actividad

ps -ax | grep <appname>,Buscar un proceso por nombre o PID

,,

[/table]

Comandos de red en Terminal

[table]

,,

ping <host>,Hacer ping al host y mostrar su estado

whois <domain>,Obtener información whois de un dominio

curl -O <url/to/file>,Descarga un archivo a través de HTTP; HTTPS o FTP

ssh <username>@<host>,Establecr una conexión SSH a <host> con el usuario <username>

scp <file><user>@<host>:/remote/path,Copia <archivo> a un <host> remoto

arp -a,Muestra un listado de todos los dispositivos de su red local incluyendo la dirección IP y MAC de todos los dispositivos

ifconfig en0,Muestra la dirección IP y MAC de su dispositivo

traceroute [hostname],Identifica la ruta y los saltos atravesados por los paquetes desde su dispositivo hasta la dirección de destino

,,

[/table]

Homebrew

[table]

,,

brew doctor,Comprobar el sistema para detectar posibles problemas

brew help,Lista de comandos útiles de Homebrew

brew install <formula>|<cask>,Instalar una fórmula

brew uninstall <formula>|cask>,Desinstalar una fórmula

brew list –formula,Listar sólo las fórmulas instaladas

brew deps <formula>|<cask>,Listar todas las dependencias de una fórmula

brew search text|/regex/,Buscar fórmulas mediante regex

brew upgrade <formula>|<cask>,Actualizar la fórmula

brew outdated <formula>|<cask>,Buscar fórmula

brew outdated –formula,Buscar una fórmula obsoleta

brew pin [installed_formula],Anclar una fórmula para que no se actualice

brew unpin [installed_formula],Desanclar para actualizar un paquete

brew cleanup,Elimine los archivos de bloqueo y los paquetes obsoletos de todas las fórmulas

,,

[/table]

Variable de entorno o ruta de acceso

[table]

,,

printenv,Muestra una lista de las variables de entorno actualmente configuradas

echo $PATH,Comprueba el valor de la variable PATH que almacena una lista de directorios con archivos ejecutables

echo $PATH >path.txt,Exporta el directorio de la ruta a un archivo de texto

export PATH=$PATH:absolute/path to/program/,Ejecuta un programa a través de la terminal sólo en la sesión actual.

,,

[/table]


Sé el primero en comentar

Deja tu comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*

*

  1. Responsable de los datos: Actualidad Blog
  2. Finalidad de los datos: Controlar el SPAM, gestión de comentarios.
  3. Legitimación: Tu consentimiento
  4. Comunicación de los datos: No se comunicarán los datos a terceros salvo por obligación legal.
  5. Almacenamiento de los datos: Base de datos alojada en Occentus Networks (UE)
  6. Derechos: En cualquier momento puedes limitar, recuperar y borrar tu información.