睡在一个批处理文件中

问题:

当编写一个批处理文件以在Windows框上自动执行某些操作时,我需要暂停执行几秒钟(通常在测试/等待循环中,等待进程启动)。当时,我可以找到的最好的解决办法是使用ping(我不想你),以达到预期的效果。我发现一个更好的写它here,描述一个可调用的“wait.bat”,实现如下:

@ping 127.0.0.1 -n 2 -w 1000 > nul
@ping 127.0.0.1 -n %1% -w 1000> nul

然后,您可以在自己的批处理文件中包含wait.bat的调用,传入秒数以进入睡眠状态。
 Apparently the Windows 2003 Resource Kit provides a Unix-like sleep command(最后!)。在此期间,对于我们仍然使用Windowsxa0XP,Windows 2000或(可悲的是)Windows NT的人,是否有更好的方法?
我修改了accepted answer中的sleep.py脚本,如果在命令行上没有传递任何参数,那么它将默认为一秒钟。
class=”lang-py prettyprint-override”>

import time, sys

time.sleep(float(sys.argv[1]) if len(sys.argv) > 1 else 1)

回答:

如果您安装了Python,或者不介意安装它(也有其他用途:),只需创建以下sleep.py脚本,并将其添加到您的PATH中的某个位置:
class=”lang-py prettyprint-override”>

import time, sys

time.sleep(float(sys.argv[1]))

如果你有这样的需要,它将允许次秒的停顿(例如,1.5秒,0.1等)。如果要将其称为sleep而不是sleep.py,则可以将.PY扩展名添加到PATHEXT环境变量中。在Windowsxa0XP上,您可以在
我的电脑→属性(菜单)→高级(选项卡)→环境变量(按钮)→系统变量(框架)

 
 
Code问答: http://codewenda.com/topics/python/
Stackoverflow: Sleeping in a batch file

*转载请注明本文链接以及stackoverflow的英文链接

发表评论

电子邮件地址不会被公开。 必填项已用*标注

89 − 86 =