Comandos UNIX — Trabajar con directorios

 

Ver tu directorio actual

Siempre puede descubrir en qué directorio se encuentra actualmente usando el comando pwd. A continuación se muestra que este usuario está en el directorio /home/username/example.com:

[server]$ pwd
/home/username/example.com

Crear directorios

Para crear un nuevo directorio, usa el comando mkdir. El siguiente ejemplo crea un nuevo directorio llamado directory_name:

[server]$ mkdir directory_name

Eliminar directorios

En realidad, hay algunas formas de eliminar directorios en el shell. Para eliminar un directorio vacío, usa el comando rmdir:

[server]$ rmdir directory_name

Para eliminar un directorio no vacío (uno que todavía contiene archivos u otros directorios) rmdir no funcionará. Aquí tienes dos opciones. Puedes eliminar todos los archivos y directorios contenidos a mano con los comandos rmdir y rm commands, o puede usar la banderilla rm -r.

[server]$ rm -r directory_name

Ten cuidado al usar esta bandera, ya que eliminará todo lo que contenga el directorio especificado. No hay "Papelera de reciclaje" o "Papelera" en el shell. Lo que elimines se ha ido para siempre, así que ten cuidado.

Cambiar directorios

Para cambiar a otro directorio, usa el comando cd.Lo siguiente cambia el directorio usando para /target/directory:

[server]$ cd /target/directory

Un cambio exitoso no devolverá ningún mensaje.

Para cambiar a tu directorio anterior, use el comando cd -:

[server]$ pwd
/current/directory/
[server]$ cd /new/directory/
[server]$ pwd
/new/directory/
[server]$ cd -
[server]$ pwd
/current/directory/

El usuario anterior ha cambiado de un directorio a otro, luego usa el comando cd - para regresar a tu directorio anterior.

Puedes ir al directorio principal rápidamente mediante el uso de ../. Si has iniciado sesión en tu servidor web a través de SSH, correr el siguiente comando cambia tu directorio al directorio de tu usuario:

[server]$ cd ../

Puedes subir varios directorios al unir los ../ juntos.

[server]$ cd ../../

Enumerar contenidos del directorio actual

Para enumerar el contenido de un directorio, usa el comando ls:

[server]$ ls
 Maildir    example.com    logs

Agrega el indicador -l para enumerar los contenidos con todos los detalles, incluidos los permisos, el tamaño del archivo y la última fecha de modificación:

[server]$ ls -l
drwx--S---    12 username  groupname    4096 Mar 15 17:28 Maildir
drwxr-xr-x     5 username  groupname    4096 Mar  7 12:35 example.com
drwxr-sr-x     8 root      root         4096 Apr 17 06:33 logs

Para enlistar todos los archivos dentro del directorio (incluidos los archivos ocultos) en formato vertical, agrega los indicadores -la:

[server]$ ls -la
-rw-------  1 username pg######   10541 Mar 12 18:46 .bash_history
-rwxr-xr-x  1 username pg######   430 Dec 18 14:45 .bash_profile
-rw-r--r--  1 username pg######   237 Mar 25  2024 .bashrc
drwxr-xr-x  5 username pg######   4096 Mar 25  2024 Maildir

Tamaños de directorio

Para determinar el tamaño de un directorio, usa el comando du con las banderas -sh:

[server]$ du -sh example.com
1532    example.com

Agrega el indicador -sh para ver el tamaño en un formato más legible (KB, MB, GB, etc.). También puedes enumerar múltiples directorios y archivos separados por espacios.

Ver también

¿Este artículo ha respondido sus preguntas?

Última actualización el PST.

¿Aún no encuentra lo que busca?