标题: [求助奇怪问题]START调用内部命令时如何实现延迟
[打印本页]
作者: HUNRYBECKY
时间: 2006-12-30 23:17
标题: [求助奇怪问题]START调用内部命令时如何实现延迟
start启动其他程序时加/W参数有效,调用内部命令时却失效了?这是为什么?
我查看了以前的很多帖子都没有提到过START调用命令的延迟,只有调用其他程序的延迟。
@echo off
rem 为了解决使用EMULE下载后自动关机会损坏下载的问题,编写此脚本。思路如下:
START /W shutdown -s -t 200
START /W shutdown -a
START XCOPY /S/C/H/R/Y rpl\*.* d:\
shutdown -s -t 100
@echo on
上面代码中如何让START在执行shutdown -s -t 200后等待200S完成后继续执行shutdown -a再等待完成后在继续执行START /W XCOPY /S/C/H/R/Y rpl\*.* d:\,复制完成后再执行shutdown -s -t 100
说明:虽然可以把每个内部命令写一个BAT文件来实现,但是命令很多就很麻烦,如何解决这个问题?是不是START对内部命令真的无能为力?
[
Last edited by HUNRYBECKY on 2006-12-30 at 11:55 PM ]
作者: HUNRYBECKY
时间: 2006-12-31 00:02
虽然使用start比较难实现内部命令的延迟,但是可以使用SLEEP来实现,下面的效果非常好,贴出来大家参考下,这下子就不用再为EMULE的坏毛病发愁了。
@echo off
rem 解决使用EMULE下载后自动关机会损坏下载的问题,编写此脚本.
SET /P STIME=多长时间后关机?输入时间加小写的h,m或s即可,如1h表示一小时:
SLEEP %STIME%
ECHO 正在备份文件,请等待.......
if not exist d:\rpl\ md d:\rpl
XCOPY /S/C/H/R/Y d:\emule\temp\*.bak d:\rpl\
shutdown -s -t 100
@echo on
EXIT
作者: lxmxn
时间: 2006-12-31 01:01
延迟不会用 ping 来实现么?
作者: hxuan999
时间: 2006-12-31 01:47
START 其实在运行程序时,如果运行的是内部CMD命令或是批文件的化,默认是以CMD /K来调用的,/K也是就运行程序保留窗口,这样就可以达到延迟.但是还有问题,那就是,如果运行的内容CMD命令是32位的GUI程序的化,CMD不等应用程序终止就返回的命令提示.如果是在CMD命令行执行,则不运行.所以SHUTDOWN就直接返回了.好象是这果并没有用/K来调用.
你可以用START /W CMD /K SHUTDOWN -S -T 100 来试一下.
这里其实直接用CMD就可以了.
作者: HUNRYBECKY
时间: 2007-1-3 08:32
Quote: |
Originally posted by hxuan999 at 2006-12-31 01:47:
START 其实在运行程序时,如果运行的是内部CMD命令或是批文件的化,默认是以CMD /K来调用的,/K也是就运行程序保留窗口,这样就可以达到延迟.但是还有问頮.. |
|
谢谢兄的回答,不过你给的还是不行。
作者: HUNRYBECKY
时间: 2007-1-3 08:35
Quote: |
Originally posted by lxmxn at 2006-12-31 01:01:
延迟不会用 ping 来实现么? |
|
我说的延迟不是兄说的延迟。
我的意思是调用一些内部命令尤其是有图形界面时如何延迟。
如START /W shutdown -s -t 200命令 我想等待那个关机的窗口关闭时完成时再执行另一个命令,哈哈,你试下,比较难吧。