我尝试使用mkdir在我的本地git repo中创建文件夹。它没有用,但是
mkdir -p
有效。
为什么呢?
我顺便使用Mac OS。我检查了mkdir -p的定义。但我还是不太明白。
答案 0 :(得分:5)
说你在目录中:
/home/Users/john
你想要制作3个新的子目录,最终得到:
/home/Users/john/long/dir/path
当留在“/ home / Users / john”时,这将失败:
mkdir long/dir/path
您必须进行三次单独调用:
mkdir long
mkdir long/dir
mkdir long/dir/path
原因是默认情况下mkdir只创建一级目录。通过添加“-p”标志,mkdir将在一次通过中创建整个集合。也就是说,虽然这不起作用:
mkdir long/dir/path
这将有效:
mkdir -p long/dir/path
并创建所有三个目录。
答案 1 :(得分:0)
在mkdir的帮助下: -p, - 如果存在则没有错误,根据需要创建父目录
所以你失败了可能只是因为你想在没有-p选项的情况下在一次拍摄中创建父文件夹和子文件夹。
答案 2 :(得分:0)
该标志将在必要时创建父目录。您可能正在尝试使用子目录创建某些内容并因缺少-p标志而失败