对 bash 中所有子文件夹的所有图像执行命令
execute a command on all images of all sub folders in bash
我有一个用于 ubuntu 的代码,用于提取图像中的粗麻布仿射描述符。它是一个名为 haff_cvpr09 的可执行文件,它以 "haff_cvpr09 imageName.ppm" 格式获取输入图像名称并给出结果。我可以在终端中以 '.\haff_cvpr09 imageNmae.ppm' 命令格式在一张图像上执行它,并且效果很好,但现在我在 17 个文件夹中有 5000 张图像,我想 运行所有图像上的代码,然后我尝试了
for file in 'folder path*.ppm'; do .\haff_cvpr09 $file; done
但是我遇到了分段错误(核心转储)错误!
我想知道如何在终端或 UBUNTU 中的 bash 中执行此操作。
感谢任何帮助:)
示例方法是使用类似的东西:
find <folder> -type f -name "*.ppm" -exec ./haff_cvpr09 {} \;
请注意,如果您的文件名称中包含空格,这可能不起作用
用你的文件夹名替换<folder>
我有一个用于 ubuntu 的代码,用于提取图像中的粗麻布仿射描述符。它是一个名为 haff_cvpr09 的可执行文件,它以 "haff_cvpr09 imageName.ppm" 格式获取输入图像名称并给出结果。我可以在终端中以 '.\haff_cvpr09 imageNmae.ppm' 命令格式在一张图像上执行它,并且效果很好,但现在我在 17 个文件夹中有 5000 张图像,我想 运行所有图像上的代码,然后我尝试了
for file in 'folder path*.ppm'; do .\haff_cvpr09 $file; done
但是我遇到了分段错误(核心转储)错误! 我想知道如何在终端或 UBUNTU 中的 bash 中执行此操作。
感谢任何帮助:)
示例方法是使用类似的东西:
find <folder> -type f -name "*.ppm" -exec ./haff_cvpr09 {} \;
请注意,如果您的文件名称中包含空格,这可能不起作用
用你的文件夹名替换<folder>