我正在从perl脚本调用bat文件。
由于bat文件需要很长时间才能执行,因此perl脚本不会等待bat文件完成并继续从下一行开始执行。Perl脚本不会等待.bat文件完成并继续执行
有没有一种方法可以暂停执行perl脚本,直到bat文件完成执行,然后在bat文件完成后再恢复。
我写了这样的事情:
system ("start $bat_file");
print ("Hello");
所以打印Hello bat文件结束之前就。
其实我想做到的是:
- 我的bat文件创建一些文件
- 我想一旦bat文件做是为了将这些文件复制到另一个位置。
但是,因为它不等待bat文件完成,所以复制失败,因为它试图复制一个不存在的文件夹,因为bat文件仍在处理中,并且没有生成输出文件。
注意:完成bat文件的时间不固定,每次都会更改。
影响你使用'system','exec','qx'或反引号'\''? – simbabque
是的,有。但这取决于你在做什么。为此,我们需要一些代码示例。 – Sobrique
是的,我用过系统。 我写了这样的: system(“start $ bat_file”); –