| folderA1 | fileA11, fileA12, ...
folderA | folderA2 | fileA21, fileA22...
| ... | ...
我想将其复制为:
| folderA1 | folderA11, folderA12, ...
folderB | folderA2 | folderA21, folderA22, ...
| ... | ...
原始文件夹A(及其结构)保持不变(不变)。
我试图创建一个文件夹,用于在(文件夹)A中的每个文件,而不该文件夹本身(文件夹)B中。我还想维护原始文件夹(A)的目录结构。
使用这个问题,我能够实现上述要求,但是它包含文件夹A本身。
find source/. -type d -exec mkdir -p dest/{} \; \
-o -type f -exec mkdir -p dest/{} \;
好像:
| | folderA1 | folderA11, folderA12, ...
folderB | folderA | folderA2 | folderA21, folderA22, ...
| | ...
您可以cd
进入folderA
并从那里运行命令:
cd folderA
find . -type d -o -type f -exec bash -c '
for path; do mkdir -p "/path/to/folderB/${path/file/folder}"; done
' bash {} +
参数扩展${path/file/folder}
将每个重命名fileXY
为folderXY
。
如果每个文件夹都包含文件,则可以删除-type d -o
。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句