创建一个BAT文件以循环通过整个文件夹运行python脚本

时间:2019-01-27 20:27:30

标签: python batch-file for-loop

现在是事情了,我有一个可视化的python脚本。如果我在CUDA模式下运行它,则总是收到错误消息:RuntimeError: CUDA error: out of memory(在用于单个图像可视化和文件夹可视化的两种CUDA模式下)。但是,当我在CPU模式下运行脚本时,我的CPU处于站立状态,并且需要30秒才能完成一次图像可视化。

但是,当我尝试在python脚本中使用for循环以通过整个数据集(约500张图像)运行可视化图像时,我的计算机在第5张图像时崩溃了(我怀疑也许有些变量没有释放)在每个for循环之后,我花了一些时间在这种方法上,效果不佳)。

因此,我决定放弃python代码的优美性,想一想是否可以编写一个运行我的可视化脚本的BAT文件,一次运行一个图像,然后转到另一个图像,直到遍历整个数据集?

现在我有bash命令可用于单个图像:

@echo off
python main_single_img.py -i "./data/sample_folder_0/image0.jpg" --no-cuda %*
pause

我对Shell代码是完全陌生的,不知道如何遍历此“ ./data/sample_folder_0/”目录中的所有.jpg文件。需要帮助!

1 个答案:

答案 0 :(得分:0)

幸运的是,我自己解决了这个问题。但是还是谢谢你们。希望其他遇到相同情况的人可以看到这篇文章并节省时间!

@echo off
for %%f in (./data/sample_folder_0/*.jpg) do (
    echo %%~nf
    python main_single_img.py -i ./data/sample_folder_0/%%f --no-cuda %*
)
pause