找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 68591|回复: 24

批处理怎样用计划任务定时执行文件?

[复制链接]
发表于 2011-8-8 15:41:46 | 显示全部楼层 |阅读模式
  1. set /p t=

  2. for /l %%I in (1 1 4) do (
  3. set b=%t:~-2%
  4. set /a f=%b%+1
  5. set s=%t:~0,2%
  6. set t=%s%:%f%
  7. call :a
  8. )

  9. :a
  10. at %t% /interactive   "C:\Program Files\TTPlayer\TTPlayer.exe"
复制代码
请问我这个代码有什么不对的地方吗 怎么不能正常执行呢
发表于 2011-8-8 22:04:43 | 显示全部楼层
LZ如果对此感兴趣的话可以学一下SCHTASKS命令
发表于 2011-8-10 20:16:17 | 显示全部楼层
  1. @echo off
  2. echo 时间格式:23:09
  3. set /p t=请输入时间:
  4. at %t% /interactive   "C:\Program Files\TTPlayer\TTPlayer.exe"
  5. ::一个本来人很容易看懂的功能,被写成一个连鬼都看不懂的代码
  6. pause>nul
复制代码
 楼主| 发表于 2011-8-11 07:59:22 | 显示全部楼层
3L  看来你还是没看明白啊 我要实现的功能是间隔一定时间 就定时执行特定功能  你怎么把时间就锁定在23:09了啊 ? 对了 at命令后面不是有/interactive这个吗 ? 这个我知道 但有时在其后面还有cmd.exe 是否可省略 其意义何在 请教
发表于 2011-8-11 08:16:15 | 显示全部楼层
1,任务计划推荐从控制面板的“任务计划”中直接创建。
2,如果想用命令完成,推荐使用 Schtasks 。
推荐从图形界面创建,因为 at 过于简单,而 Schtasks 不支持“仅在登陆后运行”,即跳过帐户密码设置一问题...同时,图形界面的“任务计划”更加强大。
 楼主| 发表于 2011-8-11 08:38:48 | 显示全部楼层
我就想问我的代码是什么原因不能顺利执行 请教诸位
发表于 2011-8-11 10:12:35 | 显示全部楼层
我不知道楼主想干嘛
C:\Documents and Settings\Administrator\桌面>echo on

C:\Documents and Settings\Administrator\桌面>set /p t=
11:50

C:\Documents and Settings\Administrator\桌面>for /L %I in (1 1 4) do (
set b=50
set /a f=+1
set s=11
set t=:
call :a
)

C:\Documents and Settings\Administrator\桌面>(
set b=50
set /a f=+1
set s=11
set t=:
call :a
)

C:\Documents and Settings\Administrator\桌面>echo :
:

C:\Documents and Settings\Administrator\桌面>(
set b=50
set /a f=+1
set s=11
set t=:
call :a
)

C:\Documents and Settings\Administrator\桌面>echo :
:

C:\Documents and Settings\Administrator\桌面>(
set b=50
set /a f=+1
set s=11
set t=:
call :a
)

C:\Documents and Settings\Administrator\桌面>echo :
:

C:\Documents and Settings\Administrator\桌面>(
set b=50
set /a f=+1
set s=11
set t=:
call :a
)

C:\Documents and Settings\Administrator\桌面>echo :
:

C:\Documents and Settings\Administrator\桌面>pause
请按任意键继续. . .



中间的for是干嘛的、、讲述一下、、最后就提取了个冒号、、
 楼主| 发表于 2011-8-11 10:36:43 | 显示全部楼层
输入时间 如12:00 然后时间在for循环中循环四次 执行时间自增功能  变成 12:01 12:02 12:03 12:04 然后用at在这四个时间执行 打开播放器的功能
发表于 2011-8-11 10:41:25 | 显示全部楼层
额、、那你这么写也不对啊、、我来改下
 楼主| 发表于 2011-8-11 10:43:46 | 显示全部楼层
好啊  帮我改下 顺便请教 我的代码错在哪里呢 实在想不明白啊
发表于 2011-8-11 10:58:33 | 显示全部楼层
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. set /p t=时间格式(00:00):

  4. for /l %%I in (1 1 4) do (
  5. if !b! lss 10 (set b=!t:~-1!) else set b=!t:~-2!
  6.    set s=!t:~0,2!
  7.    set /a b+=1
  8.    if !b! lss 10 (
  9.    set t=!s!:0!b!
  10.    call :a
  11. ) else (
  12.    set t=!s!:!b!
  13.    call :a
  14. )
  15. )
  16. pause
  17. :a
  18. echo !t!
复制代码
不按格式输入会出错。我也没怎么改、、

貌似代码冗长麻烦啊、、嘿嘿、学艺不精、、
发表于 2011-8-11 11:00:19 | 显示全部楼层
1.你应该用变量延迟、、

2.你的那个加法实在不好用,不要新定义变量,直接把b+=1即可。。

3.当09时+=1就是1了、所以我加了if判断是否小于10,如果看不懂这段话直接忽略,以后你会碰到的^_^
发表于 2011-8-11 12:07:17 | 显示全部楼层
本帖最后由 hanyeguxing 于 2011-8-11 16:09 编辑

回复 11# canyuexiaolang


    时间运算要注意10进制、12进制、24进制、60进制的问题。

回复 10# er8852973


    你的代码从设计思路上就有问题,必须重新设计,详细代码如下。


回复 10# er8852973


    代码如下:
  1. @echo off&setlocal enabledelayedexpansion
  2. set/p t=请输入24小时制时间,例如00:08:
  3. set/a t=1%t:~0,2%*60+1%t:~-2%-6100
  4. for /l %%a in (1 1 4) do (
  5.     set/a t+=1,s=100+t/60%%24,f=100+t%%60
  6.     at !s:~-2!:!f:~-2! /interactive "%ProgramFiles%\TTPlayer\TTPlayer.exe"
  7. )
复制代码
或:
  1. @echo off&setlocal enabledelayedexpansion
  2. set/p t=请输入24小时制时间,例如00:08:
  3. for /l %%a in (1 1 4) do (
  4.     set/a t=1%t:~0,2%*60+1%t:~-2%-6100+1*%%a,s=100+t/60%%24,f=100+t%%60
  5.     at !s:~-2!:!f:~-2! /interactive "%ProgramFiles%\TTPlayer\TTPlayer.exe"
  6. )
复制代码
1,t+=1 或 1*%%a 每次时间+1分钟
2,注意:当时间超过24小时,则自动减24小时。如果不需要此功能,则去掉 %%24
 楼主| 发表于 2011-8-12 03:49:01 | 显示全部楼层
回复 13# hanyeguxing


    谢谢指教 不过我的在设计上是可以执行的 不知道13L说我的代码设计思路不对是指哪里不对 我的代码忘了加延迟变量而已 加上@echo off&setlocal enabledelayedexpansion变可以执行了{ for循环中%号变成!号 }  我的思路是通过字符截取对时间进行计算 而13L是将其转换成进制数字 既将小时和分钟同一成分钟数
 楼主| 发表于 2011-8-12 03:50:16 | 显示全部楼层
回复 11# canyuexiaolang


    感谢  11L 你很谦虚
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-17 21:29 , Processed in 0.021884 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表