文章·资料 电脑软件 手机软件 网站源码




    本 站 搜 索
   推 荐 文 章        More...
华硕易电脑(ASUS Eee PC 10..
先来段开场白:为了外出携带方便..
Acronis True Image 使用..
  一款可以在Windows下使用..
Norton Ghost 使用详解
一、分区备份   使用Ghost..
    文 章 阅 读 排 行
“啊估文章软件站”网站系..
一、调试测试网站系统时,如何..
关于 Firefox 在中国持续..
亲爱的 Firefox 用户及 Firefox..
向日葵远程控制软件,设置..
向日葵远程控制软件有个人版和..
夸克网盘新用户注册如何获..
夸克网盘,新用户注册如何获得1..
FileZilla Server 设置参考
FileZilla Server 启动界面 ..
PakePlus 构建 APP 需要 Gi..
PakePlus 是一个基于 Rust Taur..
电脑显示器使用 HDMI 数据..
如果电脑显示器使用 HDMI 数据..
ASP/JavaScript:不刷新页..
function GuReturnElement(..
分享几个免费申请 SSL 证..
DigiCert 原 Symantec(赛门铁..
关闭微信的个性化推荐广告
有网友说到,微信的初衷是拉近..
 文 章 信 息
批处理(.bat)定时计划程序
评论()〗〖留言〗〖收藏
〖文章分类:电脑·手机·网络 / 电脑系统安装·设置·优化〗〖阅读选项
==========ETIME========
@echo off
color 1f
echo.
echo                  定时计划工具 VER:1.0
echo                   by:风弛网络,jastyg
echo               Email:support@efengchi.com
echo                 [url]HTTP://WWW.EFENGCHI.COM[/url]
echo                     for xp/2k3
echo.
echo.

rem ++++++++++++++++++++外部命令行模式的处理+++++++++++++++++++++++++++

rem ===================检测外部是否输入为空后者是帮助信息============
if "%1!%"=="!" goto guihelp                  :如果外部为空,则使用图形页面
if "%1%"=="/?" goto help                     :外部输入/?则出现DOS的帮助提示
if "%1%"=="/h" goto help                     :同上,输入/h
if "%1%"=="/H" goto help                     :同上,分别给出了大小写。
for %%i in (0,1,2,3,4,5,6,7,8,9,01,02,03,04,05,06,07,08,09,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31) do if "%1"=="%%i" goto kaishi
goto warng2
rem====================开始对外部输入进行设置和检验==================
:kaishi
if "%1"=="0" set d=0&set riqi=0& goto t      :初始如果日期为0
set /a tmp=%date:~8,3%+0 >nul                :判断日期是否为8号或者9号,以接下文(解决8,9的无效字符方法)
cls                                          :清屏
if errorlevel 9167 goto tmp1                 :接上文接受是否为8号或者9号
goto tmp2

rem====================对8,9号的日期进行确定========================
:tmp1
echo %date:~8,2% >tem.txt                    :导出当前的日期到临时文件
find "08" tem.txt  >nul                      :从临时文件寻找是否含有数值08,以接下文
if not errorlevel 1 set riqi=8&goto tmp3     :判断如果含有08,则设置riqi变量为8,跳转到TMP3标签
find "09" tem.txt  >nul                      :从临时文件寻找是否含有数值09,以接下文
if not errorlevel 1 set riqi=9&goto tmp3     :判断如果含有09,则设置riqi变量为9,跳转到TMP3标签

rem====================对外部日期不为0,8,9的情况下的处理===============
:tmp2
set /a riqi=%date:~8,2%+0                    :对日期进行十位为空去0处理
:tmp3
set /a d=%1+0                                :对用户输入的日期十位为空去0处理

rem===================对外部时间,用户命令进行处理=================================
:t
if exist tem.txt del tem.txt                 :对日期设置完成所留下的临时文件的清理
set t=%2                                     :定义变量T为用户输入的时间
for %%i in
(0,1,2,3,4,5,6,7,8,9,01,02,03,04,05,06,07,08,09,10,11,12,13,14,15,16,
17,18,19,20,21,22,23,) do if "%t:~0,2%"=="%%i" goto CRC
goto warng2
:CRC
if "%t:~2,1%"==":" goto CRC1
goto warng2
:crc1
for %%i in
(0,1,2,3,4,5,6,7,8,9,01,02,03,04,05,06,07,08,09,10,11,12,13,14,15,16,
17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,
40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,) do if
"%t:~3,2%"=="%%i" goto bcmd
goto warng2

:bcmd
set cmd=%~3                                   :定义运行的程序为用户输入
if "%~3!"=="!" goto command                  :如果用户不输入,则跳到默认设置给的值,到COMMAND
goto 4

:command
set cmd=c:\windows\风弛备份.bat              :设置默认运行命令

rem===================设置外部循环选项命令==========================================
:4
if "%4!%"=="!" goto 41                      :判断是否为空并相对跳转
if "%4%"=="n" goto 41                       :判断是否为小写n并相对跳转
if "%4%"=="N" goto 41                       :是否为大写N并相对跳转
if "%4%"=="y" goto 42                       :是否为小写y并相对跳转
if "%4%"=="Y" goto 42                       :是否为大写Y并相对跳转

rem===================设置默认及不循环==============================================
:41
set rem=echo.                               :定义变量为echo.
goto start                                  :跳转到日期时间的检验部分

:42                
set rem=goto start                          :定义变量为goto 语句,实现循环
set yanchi=ping -n 60 127.1^>nul            :为防止时间在指定时间内多次运行,设置了延迟1分钟
goto start                                  :跳转到日期时间的检验部分
echo.

rem ++++++++++++++++++++图形化的设置和配置处理++++++++++++++++++++++++++++++++++++++++
rem===================图形化帮助提示================================================
:guihelp
echo 请等待......
ping -n 1 ping 127.1 >nul
cls
echo  +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
echo  +用法1:直接运行此文件,跟向导走。需要帮助请输入?或者h                        +
echo  +日期格式:例如9号,可以输入9或者09                                            +
echo  +时间格式采用24小时制,即:20:50 (精度到分钟)                                  +
echo  +用法2:命令行模式;                                                          +
echo  +语法:etime 日 时间 命令(最好写完整路径) Y/N(是否循环运行,默认为N)        +
echo  +例:etime 7 20:20 notepad.exe (7日,20:20运行 NOTEPAD这个程序,并且不循环) +
echo  +例:etime 0 20:20 notepad.exe Y (20:20运行 NOTEPAD这个程序,并且循环)      +
echo  +DOS下输入 etime /? 或者 etime /h 得到帮助                                    +
echo  +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

rem===================对用户输入日期进行检测和定义==================================
:begin
echo  请输入日期
set d1=enter                                     :定义一个值给D1,用来下文的用户输入为空的检测
set /p d1=                                       :用户自定义输入
if "%d1%"=="?" goto guihelp                      :图形帮助的调用
if "%d1%"=="h" goto guihelp                      :同上
if "%d1%"=="H" goto guihelp                      :同上
if "%d1%"=="enter" goto warng                    :检测用户输入是否为空,并进行相对处理             
if "%d1%"=="0" set d=0&set riqi=0& goto shij     :检测用户输入是否为0,并相对定义
for %%i in(0,1,2,3,4,5,6,7,8,9,01,02,03,04,05,06,07,08,09,10,11,12,13,14,15,16,
17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,?,h,H,) do if "%
d1%"=="%%i" goto 89
goto warng
:89
set /a tmp=%date:~8,3%+0 >nul                    :判断日期是否为8号或者9号,以接下文(解决8,9的无效字符方法)
cls
if errorlevel 9167 goto tem1                     :接上文接受是否为8号或者9号,并相关跳转
goto tem2

rem====================对8,9号的日期进行确定,同上TMP1========================
:tem1
echo %date:~8,2% >tem.txt
find "08" tem.txt  >nul
if not errorlevel 1 set riqi=8&goto tem3
find "09" tem.txt  >nul
if not errorlevel 1 set riqi=9&goto tem3

rem====================对日期不为0,8,9的情况下的处理,同上TMP2===============
:tem2
set /a riqi=%date:~8,2%+0

:tem3
set /a d=%d1%+0

rem===================对时间,用户命令进行处理=================================
:shij
if exist tem.txt del tem.txt                      :对日期设置完成所留下的临时文件的清理
cls
echo  请输入时间
set t=enter                                       :定义一个值给T,用来下文的用户输入为空的检测
set /p t=                                         :用户自定义输入
if "%t%"=="?" goto guihelp                        :图形帮助的调用
if "%t%"=="h" goto guihelp                        :同上                  
if "%t%"=="H" goto guihelp                        :同上
if "%t%"=="enter" goto warng1                     :检测用户输入是否为空,并进行相对处理
for %%i in
(0,1,2,3,4,5,6,7,8,9,01,02,03,04,05,06,07,08,09,10,11,12,13,14,15,16,
17,18,19,20,21,22,23,?,h,H) do if "%t:~0,2%"=="%%i" goto TCRC
goto warng1
:TCRC
if "%t:~2,1%"==":" goto TCRC1
goto warng1
:tcrc1
for %%i in
(0,1,2,3,4,5,6,7,8,9,01,02,03,04,05,06,07,08,09,10,11,12,13,14,15,16,
17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,
40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,) do if
"%t:~3,2%"=="%%i" goto cmd
goto warng1

rem==================对用户命令的处理===========================================
:cmd
echo 请输入要执行文件的路径和文件名
set cmd=enter
set /p cmd=
if "%cmd%"=="?" goto guihelp
if "%cmd%"=="h" goto guihelp
if "%cmd%"=="H" goto guihelp
if "%cmd%"=="enter" goto command1                   
goto xunhuan

:command1
set cmd=c:\windows\风弛备份.bat

rem==================定义是否循环================================================
:xunhuan
echo 是否要循环运行? Y/N
set rem=enter
set /p rem=
if "%rem%"=="y" goto 14
if "%rem%"=="Y" goto 14
if "%rem%"=="enter" goto 24
if "%rem%"=="n" goto 24
if "%rem%"=="N" goto 24

:14
set rem=goto start
set yanchi=ping -n 60 127.1^>nul
goto start

:24
set rem=rem goto
cls

rem==================当前日期时间和用户输入日期时间的检测和相对处理========================
:start
if "%riqi%%time:~0,5%"=="%d% %t%" goto run
ping -n 15 127.1>nul

rem==================DOS下的帮助提示=======================================================
:help
chcp 936 >nul
echo 语法:etime 日 时间 命令(最好写完整路径) Y/N(是否循环运行,默认为N)
echo 例:etime 7 20:20 notepad.exe (7日,20:20运行 NOTEPAD这个程序,并且不循环)
echo 例:etime 7 20:20 "del c:\aaa.txt" (指定时间删除特定文件)
echo 例:etime 0 20:20 notepad.exe Y (20:20运行 NOTEPAD这个程序,并且循环)
echo DOS下输入 etime /? 或者 etime /h 得到帮助
goto exit

rem==================输入错误提示==========================================================
:warng
echo 您的日期输入有误!
echo.
goto begin


rem==================输入错误提示==========================================================
:warng1
echo 您的时间输入有误!
echo.
goto shij

rem==================执行用户定义命令或默认命令,以及是否循环==============================
:run
cls
start %cmd%                   :执行命令
%yanchi%                      :延迟时间接上文防止命令多次运行
%rem%                         :定义是否循环
exit                          :程序结束

rem==================退出到提示符下=========================================================
:warng2
echo 语法错误!!
:exit

文章作者:未知  更新日期:2008-03-20
〖文章浏览:〗〖发送文章〗〖打印文章
相关文章 ·编写 DOS 批处理(.BAT)文件2006-05-07
·编写批处理(.BAT)文件参考2005-12-10
·用批处理(.BAT)自动设置计算机名/IP地址/DNS2007-04-27
·用批处理(.BAT)自动设置计算机名/IP地址/DNS 二2007-04-27
·批处理(.bat)更改网关代码2006-12-25
·批处理(.bat)获取指定目录下的所有文件并生成列表2008-03-20
相关软件 ·Windows XP 优化减肥批处理(OptimizeXp)文件 V3.12006-12-10
〖文章阅读说明〗
·本站大部分文章转载于网络,如有侵权请留言告知,本站即做删除处理。
·本站法律法规类文章转载自[中国政府网(www.org.cn)],相关法律法规如有修订,请浏览[中国政府网]网站。
·本站转载的文章,不为其有效性,实效性,安全性,可用性等做保证。
·如果有什么问题,或者意见建议,请联系[网站管理员]。