首页 > 解决方案 > 如何遍历bash中的子目录?

问题描述

我在 Mac 上用 bash 编写脚本,需要运行命令来转换给定目录中每个子目录中的某个 MRI 图像文件。

子目录命名为 sub_01、sub_02、.. sub_40。

命令是mri_convert input_image output_image

如何遍历所有 40 个子目录?

标签: bashmacosfor-loop

解决方案


使用查找:

find . -maxdepth 2 -mindepth 2 -path "./sub_*" -exec ls {} \;

使用 mindepth 和 maxdepth 指定您只想搜索“向下一级”的目录结构,然后使用 -path 搜索所需的目录模式。使用 exec 处理返回的条目。在这种情况下,我们只是在返回的路径上运行 ls。更改 ls 以执行命令。如果您可以一次对多个条目运行该命令,请替换为 ; 对于 +


推荐阅读