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

[文本处理] [已解决]从FTP上获取当前时间之前一段时间内信息的批处理

[复制链接]
发表于 2009-8-6 14:03:21 | 显示全部楼层 |阅读模式
从FTP上获取当前时间之前一段时间内的信息。假设我的FTP上有一个a.txt文件,而且过一段时间FTP上会增加一个类似的*.txt文件,我如何获得本机当前时间的一段时间相应的*.txt文件?

[ 本帖最后由 lazygc520 于 2009-8-24 09:33 编辑 ]

评分

参与人数 1PB +2 收起 理由
keen + 2 感谢主动给标题标注[已解决]字样

查看全部评分

 楼主| 发表于 2009-8-6 14:08:21 | 显示全部楼层
附上我之前的代码,如下的代码得到的是从FTP上获取对应本机时间一天前的相关文件的批处理,我如何修改可获得当天且对应本机现在时间的一段时间之前的对应FTP上的文件信息?假设现在是14:00,我想获得13:00-14:00这段时间内FTP上对应的文件信息。

[ 本帖最后由 lazygc520 于 2009-8-27 15:27 编辑 ]
 楼主| 发表于 2009-8-7 09:43:22 | 显示全部楼层
或者能不能精确到秒,1小时=3600秒。
 楼主| 发表于 2009-8-10 08:28:03 | 显示全部楼层
难道没有人会么?我只想知道时间如何获取,程序大体不用修改。
发表于 2009-8-10 08:44:01 | 显示全部楼层
楼主,不是大家不想回你,因为时间回溯计算是相当复杂的,严格的来说这涉及到闰年的判断(二月天数),长短月的判断(是30天还是31天),时间跨日判断。而论坛关于这方面的贴子实在是不少,楼主为什么不先搜索下呢?
发表于 2009-8-12 11:23:51 | 显示全部楼层
这里有现成的计算时间的函数:Ritchie Lawrence 批处理函数库中英文版
http://bbs.bathome.net/thread-3056-1-1.html
 楼主| 发表于 2009-8-13 11:26:36 | 显示全部楼层
感谢Batcher提供的关于时间函数的资料,我把代码做了如下修改,但是还是报错,请看看是什么原因?

[ 本帖最后由 lazygc520 于 2009-8-27 15:27 编辑 ]
 楼主| 发表于 2009-8-13 14:06:46 | 显示全部楼层
  1. (for /f "usebackq tokens=1-9 delims= " %%a in ("%temp%\FileDate.txt") do (
  2.   setlocal enabledelayedexpansion
  3.   if "%%f" equ "Jan" (
  4.     set FileM=01
  5.   ) else if "%%f" equ "Feb" (
  6.     set FileM=02
  7.   ) else if "%%f" equ "Mar" (
  8.     set FileM=03
  9.   ) else if "%%f" equ "Apr" (
  10.     set FileM=04
  11.   ) else if "%%f" equ "May" (
  12.     set FileM=05
  13.   ) else if "%%f" equ "Jun" (
  14.     set FileM=06
  15.   ) else if "%%f" equ "Jul" (
  16.     set FileM=07
  17.   ) else if "%%f" equ "Aug" (
  18.     set FileM=08
  19.   ) else if "%%f" equ "Sep" (
  20.     set FileM=09
  21.   ) else if "%%f" equ "Oct" (
  22.     set FileM=10
  23.   ) else if "%%f" equ "Nov" (
  24.     set FileM=11
  25.   ) else if "%%f" equ "Dec" (
  26.     set FileM=12
  27.   )
  28.   set FileD=10%%g
  29.   set FileD=!FileD:~-2!
  30.   if "!FileM!" equ "%DstMonth%" (
  31.     if "!FileD!" equ "%DstDay%" (
  32.      echo get "%%i" "%DownFolder%\%%i"
  33.     )
  34.   )
  35.   endlocal
  36. ))>>"%ftpDown%"
复制代码
好像这段代码没改对。。。
发表于 2009-8-13 15:14:13 | 显示全部楼层

回复 8楼 的帖子

当代码有错误,在调试的时候可以去掉@echo off,或者在关键地方加pause,相当于断点调试。

没有太多人会看你的大段的代码,再一个大家没有环境测试你的代码。
 楼主| 发表于 2009-8-13 21:42:51 | 显示全部楼层
希望batcher能够帮我解答一下!!
发表于 2009-8-13 23:25:01 | 显示全部楼层
你先运行一下这两个命令,再思考一下时间应该怎样截取吧。
  1. echo %date%
  2. echo %time%
复制代码
 楼主| 发表于 2009-8-14 09:10:24 | 显示全部楼层
不是很理解,愿闻其详。
发表于 2009-8-14 09:26:13 | 显示全部楼层
%date%里面只有日期信息,没有时间信息。时间信息在%time%里面。
 楼主| 发表于 2009-8-14 09:30:11 | 显示全部楼层
哦。那是不是我应该对以下部分做修改?
  1. set FileY=%date:~0,4%
  2. call :DateToMins %date:~0,4% %date:~5,2% %date:~8,2% %time:~11,2% %time:~14,2% Mins
复制代码
还有如下部分怎么修改?
  1. (for /f "usebackq tokens=1-9 delims= " %%a in ("%temp%\FileDate.txt") do (
  2.   setlocal enabledelayedexpansion
  3.   if "%%f" equ "Jan" (
  4.     set FileM=01
  5.   ) else if "%%f" equ "Feb" (
  6.     set FileM=02
  7.   ) else if "%%f" equ "Mar" (
  8.     set FileM=03
  9.   ) else if "%%f" equ "Apr" (
  10.     set FileM=04
  11.   ) else if "%%f" equ "May" (
  12.     set FileM=05
  13.   ) else if "%%f" equ "Jun" (
  14.     set FileM=06
  15.   ) else if "%%f" equ "Jul" (
  16.     set FileM=07
  17.   ) else if "%%f" equ "Aug" (
  18.     set FileM=08
  19.   ) else if "%%f" equ "Sep" (
  20.     set FileM=09
  21.   ) else if "%%f" equ "Oct" (
  22.     set FileM=10
  23.   ) else if "%%f" equ "Nov" (
  24.     set FileM=11
  25.   ) else if "%%f" equ "Dec" (
  26.     set FileM=12
  27.   )
  28.   set FileD=10%%g
  29.   set FileD=!FileD:~-2!
  30.   if "!FileM!" equ "%DstMonth%" (
  31.     if "!FileD!" equ "%DstDay%" (
  32.      echo get "%%i" "%DownFolder%\%%i"
  33.     )
  34.   )
  35.   endlocal
  36. ))>>"%ftpDown%"
复制代码
你能不能帮我改下,我比较一下看看是否正确?

[ 本帖最后由 lazygc520 于 2009-8-14 11:13 编辑 ]
 楼主| 发表于 2009-8-14 11:14:34 | 显示全部楼层
batcher,你能否对这个程序解释一下?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-17 01:31 , Processed in 0.022720 second(s), 9 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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