Digamos que tengo una carpeta:
./folder/
En su interior hay muchos archivos e incluso subdirectorios.
Cuando ejecuto:
mkdir -p folder
No veré ningún error, incluso advertencias. así que solo quiero confirmar, ¿hay algo perdido o cambiado como resultado de este comando?
Respuestas:
mkdir -p
no le daría un error si el directorio ya existe y el contenido del directorio no cambiará.Entrada manual para
mkdir
fuente
if(err.code == 'EEXIST')
esta condición se cumplirá si el directorio ya existe.Un script portátil dependerá de POSIX, que dice de
mkdir
la-p
opción de:y si no se informan errores, la
-p
opción ha hecho su trabajo:fuente
mkdir le dará un error si el directorio ya existe.
mkdir -p NO le dará un error si el directorio ya existe. Además, el directorio permanecerá intacto, es decir, el contenido se conservará como estaba.
fuente
Tu dices eso,
Verá un error si el comando falla. La
-p
bandera solo suprime errores si el directorio ya existe.El mismo problema se producirá si intenta crear un directorio como un usuario normal, digamos, en
/etc
.Lo
-p
que suprimirá son los errores que se desencadenarían cuando el directorio de destino ya existeSin embargo, en todos los casos no perderá nada, y nada cambiará. En las situaciones de error, simplemente no tendrá el directorio que esperaba.
fuente
mkdir -p folder
no veré ningún error, ni siquiera advertencias "