我有一个包含XML文件和其他目录的目录。所有其他目录都有XML文件和子目录等。
我需要编写一个脚本(可能是bash),每个目录运行java XMLBeautifier directory
,因为我在bash脚本编写方面的技巧有点垃圾,我真的很感激一些帮助。
答案 0 :(得分:4)
如果必须获取目录,可以使用:
$ find . -type d
只需将此管道传输到您的程序:
$ find . -type d | xargs java XMLBeautifier
另一种方法将获取find
的所有文件并将其传递给您的程序,如下所示:
$ find . -name "*.xml" | xargs java XMLBeautifier
这将从当前目录中获取所有.xml
个文件,并递归遍历所有子目录。然后使用xargs
到java XMLBeautifier
逐个交出它们。
答案 1 :(得分:1)
查找是一个很棒的工具...但是,如果您不确定文件名但对这些xml文件包含的内容有一个模糊的概念,那么您可以使用grep。
例如,如果您确定所有xml文件都包含短语“正确的xml文件”(您可以将此短语更改为您认为合适的),请在命令行运行以下内容...
grep -IRw "correct xml file" /path/to/directory/*
-I选项搜索文件并在匹配模式时返回文件名 -R选项以递归方式到达您的目录 -w确保给定的模式在整体上匹配而不是单独的单词
希望这有帮助!