我正在尝试编写一个 bash 脚本,该脚本遍历路径各部分相同的子目录。也许最好的方法是举一个例子:
目录:
- /路径/相同/
- /路径2/相同/
- /path3/相同/
然后我想对这些目录中包含的所有文件“做一些事情”并将它们保存在另一个子目录中。
结果:
- /路径/另一个/
- /path2/另一个/
- /path3/另一个/
我想这必须用某种方式来完成
for i in /*/same/* ; do
... do something with $i ...
done
循环,但不知何故,我所做的所有尝试最终都没有在 $i 中返回任何内容。
有什么建议吗?谢谢 :)
答案1
您的示例代码对我来说看起来不错。这些目录中有多少个文件?通配符扩展有限制。在这种情况下,您应该使用find
,例如:
find /path*/same | while read i ; do echo "do something with file: $i" ; done