假设我有一个文件夹:
./folder/
里面有很多文件甚至子目录。
当我执行时:
mkdir -p folder
我不会看到任何错误,甚至警告。
所以只是想确认一下,这个命令的结果是否有任何丢失或改变?
答案1
mkdir -p
如果目录已经存在并且目录的内容不会更改,则不会给出错误。
答案2
答案3
如果目录已经存在, mkdir 会给你一个错误。
目录-p如果目录已经存在,不会给你一个错误。此外,该目录将保持不变,即内容按原样保留。
答案4
你这么说,
当我执行时,
mkdir -p folder
我不会看到任何错误,甚至警告。
如果命令失败,您将看到错误。该-p
标志仅在目录已存在时抑制错误。
touch x
mkdir -p x
mkdir: cannot create directory ‘x’: File exists
如果您尝试以普通用户身份在/etc
.
将-p
抑制的是当目标目录已经存在时会触发的错误
mkdir y
mkdir -p y
然而在所有情况下你都不会失去任何东西,也不会改变任何东西。在错误情况下,您将不会获得您期望的目录。