中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-17 22:25
47,814 主题排行 / 349,907 发帖 / 今日 4 篇 / 48,259 会员排行
DOS疑难解答 & 问题讨论 (解答室) » 如何给事件记录按序编号?
可打印版本  833 / 6
第1楼 robinlong 发表于 2006-03-07 16:35
初级用户 发帖 17 积分 50
如何给事件记录按序编号?
我做了一个批处理,用来记录从FTP中下载文件的过程,如下:
@ECHO OFF
echo.|date /t >>ftp.log
echo.|time /t >>ftp.log
FTP -s:"e:\TEST\ftplogin.txt">>FTP.LOG

问题是:我用什么方法可以将每次的记录按顺序编好号?如:
1.第一次记录
2.第二次记录


谢谢各位仁兄指点!
第2楼 3742668 发表于 2006-03-07 17:41
荣誉版主 发帖 718 积分 2,013
什么系统?
第3楼 robinlong 发表于 2006-03-07 17:50
初级用户 发帖 17 积分 50
win2K的
第4楼 3742668 发表于 2006-03-07 17:57
荣誉版主 发帖 718 积分 2,013
方案一:
在批处理中建立一个名字为次数的文件,每次运行批处理的时候先检查该文件的文件名,然后判断。
确定是显而易见的,不过通用性好。
方案二:
如果是NTFS分区,利用NTFS分区支持文件流的功能可以简单实现,较为可行。
缺点:必须是NTFS分区
方案三:
如果LOG文件结果比较简单,可以用findstr来获得LOG文件中的日期和时间,然后通过for来判定。(或者直接用for或set来读取LOG中的标志)
缺点:相对复杂
方案四:
通过windows事件触发器来实现
缺点:似乎只能在XP下使用,且需要开启相关服务。(默认是开启的)
方案五:
在注册表下建一键,然后利用for或set来实现
缺点:太垃圾的招数。
暂时能想到的就这几种。
ps:如果是2000以上系统
echo.|date /t >>ftp.log
echo.|time /t >>ftp.log
不如 echo %date%%time% >>ftp.log
第5楼 3742668 发表于 2006-03-07 17:58
荣誉版主 发帖 718 积分 2,013
什么分区格式?
LOG文件的结构能贴上来吗?
第6楼 3742668 发表于 2006-03-07 18:11
荣誉版主 发帖 718 积分 2,013
还是给点提示你吧:
@echo off

:find
set /a num = %num% + 1
findstr "*****第%num%次记录*****" ftp.txt >nul && goto find

echo *****第%num%次记录***** >>ftp.txt
echo %date%%time% >>ftp.txt
FTP -s:"e:\TEST\ftplogin.txt">>FTP.txt

[ Last edited by 3742668 on 2006-3-7 at 18:24 ]
第7楼 robinlong 发表于 2006-03-08 11:55
初级用户 发帖 17 积分 50
非常感谢楼上的兄台,我把findstr 换成find,OK
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023