我正在尝试使用bash脚本递归文件夹并在其上运行命令.有什么建议么?
如果你想递归到目录中,对这些文件中的每个文件执行一个命令,我将使用find命令,而不是使用
shell脚本编写任何东西.
原文链接:https://www.f2er.com/bash/386381.html该命令可以接收许多参数,例如过滤返回的文件类型的类型,或者exec执行每个结果的命令.
例如,要查找目前位于我目前的目录:
find . -type d -exec echo "Hello,'{}'" \;
这会让我有点像:
Hello,'.' Hello,'./.libs' Hello,'./include' Hello,'./autom4te.cache' Hello,'./build' Hello,'./modules'
同样找到当前目录下的文件:
find . -type f -exec echo "Hello,'{}'" \;
这将得到我这样的东西:
Hello,'./config.guess' Hello,'./config.sub' Hello,'./.libs/memcache_session.o' Hello,'./.libs/memcache_standard_hash.o' Hello,'./.libs/memcache_consistent_hash.o' Hello,'./.libs/memcache.so' Hello,'./.libs/memcache.lai' Hello,'./.libs/memcache.o' Hello,'./.libs/memcache_queue.o' Hello,'./install-sh' Hello,'./config.h.in' Hello,'./PHP_memcache.h' ...
有人会说“这不是壳”…但是为什么要重新发明轮?
(而且,在某种程度上,它是shell ^^)
欲了解更多信息,您可以查看:
男人找
>使用谷歌发现了很多教程,例如Unix Find Command Tutorial