楼 主
如何对多个文本中的对应数据进行运算
发表于 2007-02-26 04:18 · 中国 安徽 马鞍山 电信
中级用户
★★
积分 493 发帖 228 注册 2007-02-16 00:38 19年会员 UID 79596 性别 男 来自 安徽
状态 离线
1.txt
coun1=8
count2=3
count3=7
2.txt
count1=12
count2=17
count3=13
3.txt
count1=5
count2=15
count3=18
4.txt
count1=15
count2=25
count3=12
如何将4个文件中的count1,count2,count3,count4,分别相加计算出来?
得到result.txt
count1=40
count2=60
count3=50
PS:
因为实际的文件数目等于每月的天数,最好用
for /l %i in (1,1,4 ) do ...
第 2 楼
发表于 2007-02-26 05:13 · 中国 陕西 西安 电信
铂金会员
★★★★
积分 5,212 发帖 2,478 注册 2007-02-08 23:39 19年会员 UID 79003 性别 男
状态 离线
@echo off
set count1=0
set count2=0
set count3=0
for /l %%n in (1,1,4) do (
for /F "usebackq tokens=1,2 delims==" %%i in (%%n.txt) do (
set /a %%i=%%i+%%j
)
)
set count>Result.txt
第 3 楼
发表于 2007-02-26 05:25 · 中国 安徽 马鞍山 电信
中级用户
★★
积分 493 发帖 228 注册 2007-02-16 00:38 19年会员 UID 79596 性别 男 来自 安徽
状态 离线
Originally posted by slore at 2007-2-25 04:13 PM:
@echo off
set count1=0
set count2=0
set count3=0
for /l %%n in (1,1,4) do (
for /F "usebackq tokens=1,2 delims==" %%i in (%%n.txt) do (
set /a %%i=%%i+%%j
)
)
set count>Result.txt
报错:
运算符不存在。
运算符不存在。
运算符不存在。
第 4 楼
发表于 2007-02-26 05:27 · 中国 陕西 西安 电信
铂金会员
★★★★
积分 5,212 发帖 2,478 注册 2007-02-08 23:39 19年会员 UID 79003 性别 男
状态 离线
那只能说你给的信息不全面。。。你自己下载我下面的东西你自己看吧。
第 5 楼
发表于 2007-02-26 05:46 · 中国 安徽 马鞍山 电信
中级用户
★★
积分 493 发帖 228 注册 2007-02-16 00:38 19年会员 UID 79596 性别 男 来自 安徽
状态 离线
Originally posted by slore at 2007-2-25 04:27 PM:
那只能说你给的信息不全面。。。你自己下载我下面的东西你自己看吧。
谢谢!
是我搞错了!!!
扩展一下:
有n个文件,每个文件有m个count变量
@echo off
setlocal enabledelayedexpansion
set /p n=文件个数:
set /p m=变量个数:
for /l %%x in (1,1,!m!) do set Num%%x=0
for /l %%I in (1,1,!n!) do (
for /f "tokens=1,2 delims=count,=" %%i in (%%I.txt) do (
set /a Num%%i+=%%j
)
)
for /l %%x in (1,1,!m!) do @echo %%x !Num%%x! >>Num.txt
Num.txt
1 40
2 60
3 40
昨天,我想了一天就是那一句
set /a Num%%i+=%%j
我少了个
/a
!!!
郁闷呀!!!
[
Last edited by xycoordinate on 2007-2-25 at 05:33 PM ]
第 6 楼
发表于 2007-02-26 10:42 · 中国 宁夏 银川 电信
金牌会员
★★★★
积分 4,103 发帖 1,744 注册 2006-01-20 13:00 20年会员 UID 49241 性别 男 来自 甘肃.临泽
状态 离线
@echo off
for /l %%? in (1,1,4) do (
set/p =count%%?=<nul
gawk -F= /^count%%?=/"{(t+=$2)}; END {print t}" *.txt
)
pause
第 7 楼
发表于 2007-02-26 10:50 · 中国 宁夏 银川 电信
金牌会员
★★★★
积分 4,103 发帖 1,744 注册 2006-01-20 13:00 20年会员 UID 49241 性别 男 来自 甘肃.临泽
状态 离线
Originally posted by slore at 2007-2-26 05:13:
@echo off
set count1=0
set count2=0
set count3=0
for /l %%n in (1,1,4) do (
for /F "usebackq tokens=1,2 delims==" %%i in (%%n.txt) do (
set /a %%i=%%i+%%j
)
)
set ...
set count>Result.txt 这句用的妙啊~
第 8 楼
发表于 2007-02-26 22:55 · 中国 安徽 马鞍山 电信
中级用户
★★
积分 493 发帖 228 注册 2007-02-16 00:38 19年会员 UID 79596 性别 男 来自 安徽
状态 离线
set count>Result.txt 这句用的妙啊~
但是,如果有count11,count21。。。
result.txt就会是
count1=?
count11=?
count2=?
count22=?
count3=?
count4=?
.......
排列顺序好象有问题???!!!
[
Last edited by xycoordinate on 2008-1-14 at 09:35 AM ]
第 9 楼
发表于 2007-02-27 06:39 · 中国 陕西 西安 电信
铂金会员
★★★★
积分 5,212 发帖 2,478 注册 2007-02-08 23:39 19年会员 UID 79003 性别 男
状态 离线
Originally posted by xycoordinate at 2007-2-26 09:55:
但是,如果有counte11,count21。。。
result.txt就会是
count1=?
count11=?
count2=?
count22=?
count3=?
count4=?
.......
排列顺序好象有问题???!!!
如果那样我就分割,逐个输出。。。。
代码有的时候通用性强的好,有的时候还是针对自己要做的事写相对简捷有效的代码比较好。
第 10 楼
发表于 2007-02-27 10:47 · 中国 安徽 马鞍山 电信
中级用户
★★
积分 493 发帖 228 注册 2007-02-16 00:38 19年会员 UID 79596 性别 男 来自 安徽
状态 离线
Originally posted by slore at 2007-2-26 05:39 PM:
如果那样我就分割,逐个输出 。。。。
代码有的时候通用性强的好,有的时候还是针对自己要做的事写相对简捷有效的代码比较好。
愿听其详!!!
第 11 楼
发表于 2007-02-27 11:06 · 中国 浙江 台州 温岭市 电信
高级用户
★★
DOS学徒
积分 526 发帖 252 注册 2007-02-12 05:35 19年会员 UID 79286 性别 男
状态 离线
第 12 楼
发表于 2007-02-27 11:11 · 中国 陕西 西安 电信
铂金会员
★★★★
积分 5,212 发帖 2,478 注册 2007-02-08 23:39 19年会员 UID 79003 性别 男
状态 离线
"tokens=1,2 delims=count,="
你自己不是用了?如果你说排序的问题那我用VB修正……
第 13 楼
发表于 2007-02-27 12:55 · 中国 湖北 武汉 电信
版主
★★★★★
积分 11,386 发帖 4,938 注册 2006-07-23 17:10 20年会员 UID 59080
状态 离线
@echo off
set/p month=Please input the days of this month:
for /l %%a in (1,1,%month%) do (
for /f "tokens=1,2 delims==" %%b in (%%a.txt) do (
set /a %%b+=%%c
)
)
set count
pause
论坛跳转:
— 请选择 —
站务公告 & 版主讨论
意见反馈 & 网友交流
DOS学习入门 & 精彩文章 (教学室)
DOS疑难解答 & 问题讨论 (解答室)
DOS启动盘 & LOGO技术 (启动盘室)
DOS批处理 & 脚本技术(批处理室)
DOS媒体世界 & 网络技术 (多媒体室)
DOS汉化世界 & 中文系统 (中文化室)
DOS开发编程 & 发展交流 (开发室)
DOS软件下载 & 游戏分享 (下载室)
GRUB4DOS、SYSLINUX及其它启动管理软件讨论专区
其它操作系统综合讨论区
WinPE、PowerShell及其它命令行系统专区
贴图灌水、文学娱乐专区
网络日志(Blog)
论坛回收站
├ 链接失效,待修正