Board logo

标题: 如何让它只运行1次??? [打印本页]

作者: acme     时间: 2007-4-17 08:45    标题: 如何让它只运行1次???

如何让批处理第一次执行才会运行这些命令。
比如: 我需要在第一次执行时执行: at 20:00 e:\start.bat
          后续就不要执行该部分了。
高手有办法吗?谢谢!
作者: 本是     时间: 2007-4-17 08:54
方法很多,如:
1.运行完自行删除;
2.运行完改名;
3.运行完移到另一目录;
4.测时运行;
5.运行时在内存中留一个环境变量,以后测试避免重复;
......
作者: acme     时间: 2007-4-17 09:05
大哥如何实现bat命令行删除呢?
作者: vk     时间: 2007-4-17 09:28
@echo off
at 20:00 e:\start.bat
del /q %0

这样就能让批处理文件在执行好AT命令后 将自己删除!
作者: 0451lym     时间: 2007-4-17 09:30
在批处理的最后写入:
TYPE A.BAT|FIND /I /V "at 20:00 e:\start.bat">A.BAT
作者: acme     时间: 2007-4-17 10:24
是只删除命令行吗?
作者: 0451lym     时间: 2007-4-17 11:02
删除所有at 20:00 e:\start.bat的命令行
作者: bjsh     时间: 2007-4-17 22:34
给你个参考吧;双击运行

  Quote:

  1. @echo off                                
  2. echo this is the first  & pause                           
  3. for /f "delims=" %%a in ('echo @echo off ^& echo goto start ^& more ^<%0') do (                           
  4. if not defined w (echo %%a >%0 && set w=1) else echo %%a >>%0                              
  5. )                          
  6. goto exit                          
  7. :start                                
  8. echo this is not the first                        
  9. pause                           
  10. :exit
         BJSH发表于:  2007-04-17  09:26

[ Last edited by bjsh on 2007-4-17 at 09:36 AM ]
作者: vkill     时间: 2007-4-18 00:24
del "%~nx0" 这样保险点
作者: acme     时间: 2007-4-18 21:10
感谢大家的热心回答与指导,如果加分规则是正确的话我已经给指导出真实内容的gg们加了少许分,每日加分有限不要嫌少哦。
非常感谢!;)