Board logo

标题: [其他] [已解决] 批处理 at 命令如何使用? [打印本页]

作者: xudaweb    时间: 2011-9-22 21:14     标题: [已解决] 批处理 at 命令如何使用?

本帖最后由 xudaweb 于 2011-9-23 18:20 编辑

在批处理经典代码中,发现一个自动关机的代码,其中核心代码如下:
  1. @echo off
  2. set times=
  3. set /p times=              
  4. if not "%times%"=="" for %%i in (%times%) do (
  5.     at %%i /every:M,T,W,Th,F,S,Su shutdown -s
  6. )
复制代码
输入时间测试,没有任何反应。需要如何修改才能测试呢?
其中at那句代码也不明白,请高手解释下~
作者: xslxslxsl    时间: 2011-9-22 21:55

应该是计划任务,定时关机的代码吧。at  %%i  /every:M,T,W,Th,F,S,Su Shutdown -s -为每周的周一至周日/every:M,T,W,Th,F,S,Su在 %%i 这个时间执行 Shutdown -s 关机,我想应该是这样的,你说输入的时间没有反应,是不是输入的时间有问题啊
作者: xudaweb    时间: 2011-9-22 22:06

回复 2# xslxslxsl
这句代码的意思大概也能猜出来,就是测试不了...不知道哪里有问题...
作者: xslxslxsl    时间: 2011-9-22 22:31

回复 3# xudaweb


    不好意思低估了,代码我没有试过,但是感觉好像没有什么不对,会不会你输入的时间格式有问题。
作者: awk    时间: 2011-9-22 22:35

  1. sc config schedule start= auto
  2. sc start schedule
复制代码

作者: 920168    时间: 2011-9-22 22:36

本帖最后由 920168 于 2011-9-22 22:37 编辑

汗有人回了
我来来愚蠢的回答!
难道没开启服务?
Task Scheduler没开?
作者: xudaweb    时间: 2011-9-22 22:37

回复 4# xslxslxsl

提示输入的时间是24小时制,格式没有问题的。
作者: 920168    时间: 2011-9-22 22:42

回复 7# xudaweb


    把系统时间,转成12制!
作者: cjiabing    时间: 2011-9-23 00:05

  1. @echo off
  2. set times=
  3. set /p times=              
  4. if not "%times%"==""  at %%i  /every:M,T,W,Th,F,S,Su shutdown -s
复制代码
一、开服务,看楼上的
二、确定你的时间是“9:23”还是“09:23”。差看“echo %time%”
三、不必用FOR
作者: xudaweb    时间: 2011-9-23 18:19

本帖最后由 xudaweb 于 2011-9-23 18:21 编辑

换了一台电脑,服务可以开启,测试OK,感谢各位热心肠!
公司的办公电脑权限被IT锁定,不是管理员可能无法修改服务。
作者: 小麦    时间: 2011-9-30 01:25

回复 6# 920168


    多了一个“r”
作者: 小麦    时间: 2011-9-30 01:26

回复 9# cjiabing


    弱弱的问一下 :那个"set times=“  在其中起着什么作用??
作者: awk    时间: 2011-9-30 08:35

回复 12# 小麦


变量初始化
把它去掉也不会出错
但是有的程序员习惯这样做




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2