opciones comando unix command-line command-line-arguments directory-structure

unix - comando - Opción “-p” de mkdir



mkdir-p ubuntu (4)

Así que esta no parece ser una pregunta terriblemente complicada, pero no puedo encontrar la respuesta. Estoy confundido acerca de lo que hace la opción -p en Unix. Lo utilicé para una asignación de laboratorio al crear un subdirectorio y luego otro subdirectorio dentro de ese. Se veía así:

mkdir -p cmps012m/lab1

Esto está en un directorio privado con derechos normales (rlidwka). ¡Gracias por adelantado! Oh, ¿y a alguien le importaría dar una pequeña explicación de lo que significa "rlidwka"? No soy un noob total para Unix, pero no estoy realmente familiarizado con lo que esto significa. Esperemos que no sea una pregunta demasiado vaga.


Las páginas de manual son la mejor fuente de información que puede encontrar ... y está al alcance de su mano: man mkdir produce esto acerca del cambio -p :

-p, --parents no error if existing, make parent directories as needed

Ejemplo de caso de uso: Supongamos que quiero crear directorios hello/goodbye pero ninguno existe:

$mkdir hello/goodbye mkdir:cannot create directory ''hello/goodbye'': No such file or directory $mkdir -p hello/goodbye $

-p creó tanto, hello como goodbye

Esto significa que el comando creará todos los directorios necesarios para cumplir con su solicitud, sin devolver ningún error en caso de que ese directorio exista.

Acerca de rlidwka , Google tiene una muy buena memoria para las siglas :). Mi búsqueda devolvió esto, por ejemplo: http://www.cs.cmu.edu/~help/afs/afs_acls.html

Directory permissions l (lookup) Allows one to list the contents of a directory. It does not allow the reading of files. i (insert) Allows one to create new files in a directory or copy new files to a directory. d (delete) Allows one to remove files and sub-directories from a directory. a (administer) Allows one to change a directory''s ACL. The owner of a directory can always change the ACL of a directory that s/he owns, along with the ACLs of any subdirectories in that directory. File permissions r (read) Allows one to read the contents of file in the directory. w (write) Allows one to modify the contents of files in a directory and use chmod on them. k (lock) Allows programs to lock files in a directory.

Por rlidwka tanto, rlidwka significa: Todos los permisos rlidwka .

Vale la pena mencionar, como @KeithThompson señaló en los comentarios, que no todos los sistemas Unix son compatibles con ACL. Así que probablemente el concepto rlidwka no se aplica aquí.


Tenga en cuenta que -p es un argumento para el comando mkdir específicamente, no la totalidad de Unix. Cada comando puede tener cualquier argumento que necesite.

En este caso, significa "padres", lo que significa que mkdir creará un directorio y cualquier padre que aún no exista.


-p|--parent se utilizará si está intentando crear un directorio con top-down enfoque de top-down hacia top-down . Eso es crear el directorio padre, luego el hijo y así sucesivamente si no existe ninguno.

-p, --parents no produce un error si existe, crea directorios padre según sea necesario

Sobre rlidwka significa dar acceso total o administrativo. Lo encontré aquí https://itservices.stanford.edu/service/afs/intro/permissions/unix .


mkdir [-switch] nombre de carpeta

-p es un interruptor que es opcional, creará una subcarpeta y una carpeta principal, así como la carpeta principal no existe

-p, --parents no produce un error si existe, crea directorios padre según sea necesario

mkdir -p storage/framework/{sessions,views,cache}

Esto creará sesiones de subcarpetas, vistas, caché dentro de la carpeta del marco, independientemente de que el marco esté disponible anteriormente o no