请教:批处理中AT命令的时间参数传递问题

hjxm 2012-11-07 05:42:43
现在遇到个问题:
用net time \\computerName 获取了目标机器的当前时间,传给字串,如:string="上午 08:31",现在怎么把这个时间加1做为参数,并传给AT命令使其能正确执行?

@echo off
for /f "" %%a in('net time \\computerName') do (set string=%%a)

at \\computerName string test.exe ;这一句功能应该怎么实现

谢谢!
...全文
150 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
Forever_Young 2012-11-09
  • 打赏
  • 举报
回复
引用 4 楼 hjxm 的回复:
你的代码写得很规范啊,学习下,谢谢指点!
写得仓促,其实这个时间处理上还有点点不对头的地方,你可以自己看看
hjxm 2012-11-09
  • 打赏
  • 举报
回复
你的代码写得很规范啊,学习下,谢谢指点!
Forever_Young 2012-11-08
  • 打赏
  • 举报
回复
实现起来也不复杂,主要是时间处理,写了一个XP环境下测试通过的

@echo off
for /f "tokens=4-6 delims=: " %%a in ('net time \\computerName') do (
  set HRMODE=%%a
  if "%%b"=="08" (set /a HR=8) else (if "%%b"=="09" (set /a HR=9) else (set /a HR=%%b)) 
  if "%%c"=="08" (set /a MIN=9) else (if "%%c"=="09" (set /a MIN=10) else (set /a MIN=%%c+1)) 
)
if %MIN% GEQ 60 (
  set /a MIN-=60
  set /a HR+=1
)
if "%HRMODE%"=="上午" (if %HR%==12 (set HR=0))
if "%HRMODE%"=="下午" (if %HR% NEQ 12 (set /a HR+=12))
if %HR% GEQ 24 (set HR=0)
if %MIN% LEQ 9 (set MIN=0%MIN%)
if %HR% LEQ 9 (set HR=0%HR%)
at \\computerName %HR%:%MIN% test.exe
pause
hjxm 2012-11-08
  • 打赏
  • 举报
回复
那具体应该怎么实现呢,有什么方法没
Forever_Young 2012-11-07
  • 打赏
  • 举报
回复
从时间格式上来看你这个涉及到了24小时制转换和时间计算,不仅仅是传参的问题

9,506

社区成员

发帖
与我相关
我的任务
社区描述
Windows专区 安全技术/病毒
社区管理员
  • 安全技术/病毒社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧