- Introducción (Volver al índice General)
El comando mkdir es el comando utilizado para crear directorios o carpetas en Linux. Su sintaxis es la siguiente:mkdir [-m=mode][-p][-v][-Z=context] directorio [directorio ...]
Expliquemos un poco las opciones:
- -m, –mode=MODE: Establece el modo, como con chmod.
- -p, –parents: En caso de no existir el directorio indicado en la ruta, lo crea. Es muy útil si queremos que se creen de una sola vez todos los directorios que hay en la ruta. Si existen, no genera error.
- -v, –verbose: Presenta un mensaje por cada directorio creado.
- -Z: Si estamos utilizando SELinux esta opción establece el contexto de seguridad de de cada directorio creado.
Se pueden pasar varias opciones a la vez. Veamos un ejemplo:
$ mkdir -pvm a=rwx /temporal/dir1
- Ejemplos (Volver al índice General)
- Ejemplo básico de como crear un directorio (Volver al índice General)
Supongamos que nos encontramos en el directorio home del usuario y queremos crear el directoriotemporal
, la orden sería la siguiente:usuario@mypc:~$ mkdir temporal
Veamos el resultado con el comando tree:
usuario@mypc:~$ tree temporal/ temporal/ 0 directories, 0 files
- Creando subdirectorios (Volver al índice General)
Supongamos ahora que queremos crear el subdirectoriodir1
que cuelga detemporal
, la orden sería la siguiente:usuario@mypc:~$ mkdir temporal/dir1
Supongamos que queremos crear el subdirectorio
dirA
que cuelga detemporal/dir2
. Comodir2
no existe, tendremos que indicarlo en las opciones para que cree ambos directorios. En este caso utilizaremos la orden siguiente:usuario@mypc:~$ mkdir -p temporal/dir2/dirA
Creando varios directorios a la vez. En este ejemplo crearemos en
temporal
los directoriosdir3
ydir4
:usuario@mypc:~$ mkdir temporal/dir3 temporal/dir4
Veamos el resultado con el comando tree:
usuario@mypc:~$ tree temporal/ temporal/ ├── dir1 ├── dir2 │ └── dirA ├── dir3 └── dir4
- Aplicando modos (Volver al índice General)
Vamos a crear los directorios aplicando privilegios de lectura, escritura y ejecución. Veamos unos ejemplos:
En el siguiente ejemplo el usuario tiene privilegios de lectura, escritura y ejecución, el grupo de lectura y ejecución y el resto ningún privilegio.usuario@mypc:~$ mkdir -m u=rwx,g=rx,o= temporal
Lo mismo que en ejemplo anterior pero en octal:
usuario@mypc:~$ mkdir -m 750 temporal
Veamos el resultado con un listado:
usuario@mypc:~$ ls -ld tem* drwxr-x--- 2 usuario usuario 4096 ene 20 15:00 temporal
En este otro ejemplo otorgamos los privilegios de lectura, escritura y ejecución a todos los usuarios.
usuario@mypc:~$ mkdir -m a=rwx temporal
Lo mismo que en ejemplo anterior pero en octal:
usuario@mypc:~$ mkdir -m 777 temporal
usuario@mypc:~$ ls -ld tem* drwxrwxrwx 2 usuario usuario 4096 ene 20 15:04 temporal
- Utilizando {} (Volver al índice General)
Podemos crear varios directorios que compartan parte del nombre (o no) de una sola vez. Veamos unos ejemplos:Crear dentro del directorio
temporal/dir1
los directoriosdirA
,dirB
,dirC
ydirD
:usuario@mypc:~$ mkdir temporal/dir1/dir{A..D}
Crear dentro del directorio
temporal/dir3
los directoriosdir1
,dir2
,dir3
ydir4
:usuario@mypc:~$ mkdir temporal/dir3/dir{1..4}
Crear dentro del directorio
temporal/dir4
los directoriosdirE
,dirG
,dir9
ydir11
:usuario@mypc:~$ mkdir temporal/dir4/dir{E,G,9,11}
Veamos el resultado con el comando tree:
usuario@mypc:~$ tree temporal/ temporal/ ├── dir1 │ ├── dirA │ ├── dirB │ ├── dirC │ └── dirD ├── dir2 │ └── dirA ├── dir3 │ ├── dir1 │ ├── dir2 │ ├── dir3 │ └── dir4 └── dir4 ├── dir11 ├── dir9 ├── dirE └── dirG
Ahora vamos a liarla parda. Vamos a crear con una sola orden toda una estructura de directorios:
$ mkdir -p temporal/Peliculas/{Accion,Comedia/{Española,Internacional},Intriga/{Thriller,Negro},SciFi}
Veamos este último resultado con el comando tree:
$ tree temporal/ temporal/ ├── dir1 │ ├── dirA │ └── dirB ├── dir2 │ └── dirA ├── dir3 │ ├── dir1 │ ├── dir2 │ ├── dir3 │ └── dir4 ├── dir4 │ ├── dir11 │ ├── dir9 │ ├── dirE │ └── dirG └── Peliculas ├── Accion ├── Comedia │ ├── Española │ └── Internacional ├── Intriga │ ├── Negro │ └── Thriller └── SciFi
- Ejemplo básico de como crear un directorio (Volver al índice General)
Nota: Si no tenéis instalado el comando tree, en Debian y distribuciones basadas en Debian, podéis instalarlo con el siguiente comando:
$ sudo apt install tree
Quizá te puedan interesar los siguientes artículos publicados en ZeppelinuX:
- Eliminar directorios en Linux con rmdir y rm.
- Mover, copiar, renombrar y borrar directorios y archivos en Linux.
- Cómo moverse por los directorios en Linux.
Espero que este artículo os haya sido de utilidad. Si pensáis que podéis colaborar para mejorar este artículo, que hay algo erróneo en él o simplemente deseáis comentarlo, por favor, dejad vuestra opinión más abajo.
Configuración de privacidad y de cookies.
Deja una respuesta