从文本文件创建文件夹

从文本文件创建文件夹
ls -R $pwd  > text.txt    

上述命令生成以下txt文件:

engagement
groups
solo
text.txt

./engagement:
VAM01427.JPG
_VJR3208.JPG
_VJR3244.JPG
_VJR3281.JPG

./groups:
family
friends

./groups/family:
_VJR3358.JPG
_VJR3376.JPG
_VJR3379.JPG

./groups/friends:
_VJR3404-2.jpg
_VJR3416.jpg
_VJR3456.JPG

./solo:
VAM01381.JPG
VAM01385.JPG
VAM01386.JPG

基于此文本文件,我尝试使用 mkdir 命令创建文件夹。

当我运行命令时:cat text.txt | xargs -L 1 mkdir 此命令正在生成重复的文件夹

我无法正确地提出问题..有人可以帮忙吗?

答案1

如果将文本文件的格式更改为仅列出目录,整个问题就会变得简单得多:

find . -type d >directories.txt

然后

while IFS= read -r dir; do mkdir -p "$dir"; done <directories.txt

这里我们假设目录名可能包含空格,但绝对不包含换行符

答案2

从您的文本文件中,我已经能够执行您想要的操作(在 $HOME 文件夹中创建目录),因此cat text.txt | grep ./ | awk -F: '{ print $1}' | xargs -L 1 mkdir我们首先过滤 ./ 行,然后删除末尾的 : 以创建文件夹。

相关内容