第一次在Firefox中运行iMacros时,批处理文件中的暂停无法正常工作

时间:2018-01-25 05:44:02

标签: batch-file firefox imacros pause

好的,所以我很困惑我应该如何正确地标题我的问题,所以我会尽力在这里解释一下。

我试图通过在批处理文件中将它们拼接在一起来运行iMacros和一些python脚本。这是我想要的虚拟代码:

    "C:\Program Files\Mozilla Firefox\firefox.exe" imacros://run/?m="#Current.iim"
    PAUSE
    @py %~dp0\SomePythonProgram.py %*
    PAUSE

添加PAUSE的原因是iMacro自动化需要一段时间(大约8分钟)并且它会截取某些选项卡的屏幕截图。随后的python程序将调整这些图像的大小,因此一旦iMacros停止运行,用户必须返回cmd(如果他们已经去了其他地方)并在执行python程序之前按任意键。

如果在任务管理器中看到Firefox已经打开或在背景中运行,上面的代码实际工作。现在,当我在运行批处理文件之前在任务管理器中杀死它时,而不是通常的"按任意键..." cmd卡在这部分: CMD

有没有办法继续使用其余代码(可能通过按键/热键)?或者我需要用其他东西替换PAUSE吗?我尝试过TRYOUT,它似乎遇到了同样的问题。我使用的是Windows 10,因此SLEEP不是内置的。那会帮助我实现我想要的吗?

1 个答案:

答案 0 :(得分:1)

我建议使用timeout并在第一个命令后使用&&将命令拆分为一行。

&&的原因是,如果上一个命令成功完成,脚本只能继续下一个项目。 timeout /t 600等待10分钟后再继续下一个命令。

start "" /w /b "C:\Program Files\Mozilla Firefox\firefox.exe" imacros://run/?m="#Test_Macro.iim" && timeout /t 600 & @py %~dp0\SomePythonProgram.py %* & timeout /t 600

如果您想继续使用该脚本,无论Firefox是否成功启动,您只需使用一个&

要详细了解cmd命令中提供的开关,您只需打开cmd.exe窗口并输入help

即可

这将为您提供一长串可用命令,要了解有关每个命令的更多信息,只需输入命令名称后跟切换/?我们可以使用starttimeout作为帮助开关的一个例子:

start /?
timeout /?