【发布时间】:2022-04-03 09:10:34
【问题描述】:
我正在尝试从文本文件中获取名称列表并将它们与目录列表进行比较。如果目录中有匹配项,则移动它们。
下面的代码不起作用,但它本质上是我想要实现的。
#!/bin/bash
echo \"Starting\"
names=\"names.txt\"
while IFS= read -r directory; do
find \'Folder/\' -type d -name \'$directory\' -print0
done < \"$names\" | xargs -t mv Folder/ MoveTo/
示例文件夹结构:
Folder/
folder1
folder2
folder3
oddfolder
oddfolder2
MoveTo/
(empty)
示例文本文件结构:
folder1
folder2
folder3
输出期望:
Folder/
oddfolder
oddfolder2
MoveTo/
folder1
folder2
folder3
我没有空格或大写的问题。如果匹配,那么我想将选定的文件夹移动到不同的文件夹。
标签: bash directory find compare