制表符制表 DOS批处理时间控制

来源:百度知道 编辑:UC知道 时间:2024/06/25 05:49:15
在记事本中怎样用制表符制表,请举例说明?
在DOS批处理中用什么方法控制命令执行的时间,比方说当第一条命令执行完之后过一分钟再执行下一条命令?
偶是菜鸟,请各位赐教!

dos程序有
time /t,可以显示当前时间。
但是要将其值取出并存入一个变量,然后将该变量加1。这样可以获得1秒后的时间。
用at 命令可以在指定的时间运行某个程序,但是我在dos下实验不成功,可能是其他设置的问题。

这里有几个问题:
第一,为了获取当前时间,可以将time /t的输出存到文本里,如
echo set timeval= >gettime.bat
time /t >>gettime.bat
这样是在gettime.bat里输入了两行内容,
set timeval=
11:42
想要将11:42这个时间存入timeval,需要将两行和并为1行。这就需要写一个简单的文本过滤程序,将其中的'\n''\r'换行符去掉。然后可以运行gettime.bat来将timeval的值设置为当前系统时间。
2.将timeval值的分钟数取出来。
现在timeval=11:42
可以用命令 set timeval=%timeval:~0,2%取出11。这时timeval=11
然后 set /a timeval+=1
现在timeval=12
3.用同样的方法可获得当时的秒数。
4.然后你可以用一个无限循环语句再次用第1、2步中的方法取当前系统时间,一旦系统时间达到(或超过——因为获取时间的循环中可能不错过某一秒,这是因为我们的处理比较繁琐)timeval1(分钟)、timeval2(秒)中变量的值,则认为达到指定时间,则可以退出循环,执行当前所要执行的命令。
dos中的循环可以用标签和goto语句来实现
:label
如果时间未到达,
goto labe
否则,goto nextcommand

========================================
其中要用编程语言写一个去除换行符的程序,这个比较简单。最复杂的是判断时间到达活超过指定时间。这个不能忘了考虑秒数。因为你如果在11分58秒执行的话,2秒后,