我有一个包含子文件夹嵌套结构的文件夹。我想创建另一个文件夹并将该结构复制到。但是,我只想保留结构的第一级。更清楚的是,想象一个包含100个文件夹的文件夹,每个文件夹都有一些其他嵌套级别的文件夹。我想在其他地方创建一个单独的文件夹,在其中我创建了100个具有完全相同名称的文件夹。就是这样。无需复制每个文件夹的内容。
是否可以通过管道,mkdir或其他方式在一行代码中进行此操作?
答案 0 :(得分:1)
将文件夹结构写入某个文件
find . -type d > /tmp/dirs.txt
进入新文件夹并使用
创建目录xargs mkdir -p < /tmp/dirs.txt
或者如果你在foldernames中有空格(这绝不是一个好主意):
find . -type d -print0 > /tmp/dirs.txt
xargs -0 mkdir -p < /tmp/dirs.txt
如果您只想要第一级结构,请将-maxdepth 1
添加到find命令。
答案 1 :(得分:1)
您可以使用find这样创建在第1级找到的目录:
find ./A -mindepth 1 -maxdepth 1 -type d -execdir mkdir "$PWD/B/{}" \;