gpt4 book ai didi

bash - 递归读取文件夹并对每个文件夹执行命令

转载 作者:行者123 更新时间:2023-11-29 08:44:26 25 4
gpt4 key购买 nike

我正在尝试递归到文件夹中,然后使用 bash 脚本对它们运行命令。有什么建议吗?

最佳答案

如果你想递归到目录中,对其中找到的每个文件执行一个命令,我认为我会使用 find 命令,而不是使用 shell 脚本编写任何东西。

该命令可以接收很多参数,例如用于过滤返回文件类型的 type,或用于对每个结果执行命令的 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”……但是为什么要重新发明轮子呢?
(而且,在某种程度上,它是 shell ^^ )


有关更多信息,您可以查看:

关于bash - 递归读取文件夹并对每个文件夹执行命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1333813/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com