bat 中的sleep 和 kill

在Unix环境下,命令行或者shell中sleep和kill是常见的动作,在Windows的.bat文件中处理类似的任务就不那么直接了,备忘如下:

[sleep]
ping 127.0.0.1 -n 需要的秒数+1 -w 1000 > nul

[kill]
taskkill /f /im "进程名(如notepad.exe)"
taskkill /f /fi "WINDOWTITLE eq notepad*"

其中/f表示强制,/im表示image镜像名(可执行文件名),/fi表示filter,后面跟表达式,比如这里的"窗体标题等于notepad*",支持wildcast通配符。
 

由于没有原生的sleep或者wait命令,需要想其他办法在batch脚本里实现这个功能。

来源:http://stackoverflow.com/questions/735285/how-to-wait-in-a-batch-script

You can ping a random address and specify the desired timeout:

ping 123.45 . 67.89 - n 1 - w 10000 > nul

And since the address does not exists, it'll wait 10,000 ms (10 seconds) and returns.


  • The -w 10000 part specifies the desired timeout in milliseconds.
  • The -n 1 part tells ping that it should only tries once (normally it'd try 4 times).
  • The > nul part is appended so the ping command doesn't output anything to screen.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值