gpt4 book ai didi

linux - 在目录的每个级别上运行脚本

转载 作者:太空宇宙 更新时间:2023-11-04 09:11:16 24 4
gpt4 key购买 nike

我有一个名为 summarize.sh 的脚本,它生成目录内文件/目录的摘要。我想让它从顶部递归地向下运行整棵树。执行此操作的好方法是什么?

我试图用一个 for 循环来循环它

for dir in */; do
cd $dir
./summarize.sh
cd ..

但是它返回./summarize.sh: no file or directory是因为我在运行脚本时没有移动脚本吗?我对 unix 目录不是很熟悉。

最佳答案

您可以使用 find 递归列出文件。 -type f 并让您的脚本将感兴趣的文件作为第一个参数,这样您就可以执行 find 。 -type f -exec myScript.sh {}\;

如果您只需要目录,请使用 find 。 -type d 代替,或者如果你想两者都使用 find . 没有限制。

名称的附加选项,例如找到。 -name '*.py'

最后,如果你不想向下递归目录结构,即只总结顶层,你可以使用 -maxdepth 1 选项,比如 find 。 -type d -maxdepth 1 -exec myScript.sh {}\;.

关于linux - 在目录的每个级别上运行脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55931488/

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