Cómo crear directorios en Linux (comando mkdir)

Aunque pueda resultar bastante obvio para la mayoría, para los más novatos puede ser una asignatura pendiente, la creación de directorios en GNU/Linux. Por ello aquí os explicaré como crear nuevos directorios (también conocidos como carpetas) en nuestras distribuciones favoritas, desde la consola de comandos, utilizando el comando mkdir.

Además, veremos opciones que, aunque ya seas veterano, quizás desconozcas. En cualquier caso, tened en cuenta que esto también se puede hacer fácilmente desde el escritorio que utilicéis, ya sea PLASMA KDE, GNOME, XFCE u otros.

¿Cómo funciona mkdir?

Su sintaxis es bastante simple:

  1. mkdir [OPTION] [DIRECTORY]

Debemos tener en cuenta que el comando puede tomar uno o más nombre de directorio como argumentos. Es esencial que tengamos permisos de escritura en la ubicación donde queramos crear dicho directorio. De lo contrario recibiremos un error de permisos denegado.

Crear un nuevo directorio

Para crear un nuevo directorio en GNU/Linux, debemos pasar el nombre de este como argumentos para el comando mkdir. Su uso simple, en la ubicación actual donde estemos:

  1. mkdir prueba

Podemos verificar que efectivamente se ha creado mediante el comando ls

  1. ls -l

Al proporcionar solo el nombre del directorio, sin la ruta completa, se creará en el directorio de trabajo actual.

Si queremos saber exactamente donde estamos ubicados dentro del sistema de ficheros lo podemos averiguar con el comando pwd Para cambiar a otro directorio debemos utilizar el comando cd

Si deseamos crear un fichero en otra ubicación, por ejemplo, en /tmp, desde cualquier ubicación, lo haríamos así:

  1. mkdir /tmp/prueba

Recordar, como hemos dicho antes, que necesitamos tener permisos de escritura en la ruta que deseemos crear el nuevo directorio.

Crear directorios subdirectorios

Esto es bien sencillo. Para crear todo un árbol de directorios, sin despeinarnos, utilizamos el parámetro -p

  1. mkdir -p /home/david/test/desarrollo/proyecto

Con este parámetro creará el directorio del árbol, si este no existe.

Asignar permisos a un directorio

Seguramente tendrás dudas respecto a los permisos de los nuevos directorios. Para ello deberías consultar antes este enlace:

Permisos de archivos en Linux

Para crear un directorio con permisos específicos, debemos la opción -m (-mode). La sintaxis para asignar permisos es la misma que con el comando chmod (explicamos como funciona en el enlace anterior)

En el siguiente ejemplo, el nuevo directorio tendrá 775 de permisos, lo que significa que propietario y el grupo tendrán todos los permisos, y el invitado solo podrá leer y ejecutar, pero no modificar.

  1. mkdir -m 775 nuevodirectorio

El comando mkdir también le permite crear un árbol de directorios complejo con un comando:

  1. mkdir -p Musica/{Pop,Metal/Heavy,BSO,Rock/{Gotico,Progresivo},Clasica/Barroca}

Con el siguiente resultado, utilizando el comando tree para la visualización del árbol:

  1. Musica
  2. ├── BSO
  3. ├── Clasica
  4. │   └── Barroca
  5. ├── Metal
  6. │   └── Heavy
  7. ├── Pop
  8. └── Rock
  9.     ├── Gotico
  10.     └── Progresivo

Y esto es todo, para cualquier duda siempre podemos consultar su página de man.

De este y de más comandos os hablé en esta extensa entrada:

Los 42 comandos más importantes en Linux

Espero que esta entrada os pueda ser de utilidad en algún momento.