当前位置: 首页 > 图文教程 > 脚本技术 > DOS/BAT > 把某个目录下所有txt中第三行第四个数字相加

DOS/BAT
每天按时 重启服务器 的批处理
Netsh 命令备份和恢复网络设置
批处理 Set 命令详解 让你理解set命令
cd命令 目录跳转
cmd tree命令 以树形格式罗列文件
dos 内容重定向符 >和>>
cmd if条件 条件判断
cmd goto命令 流程跳转
cmd copy命令 文件复制
cmd del命令 文件删除
cmd ren命令 重命名文件(夹)
cmd md命令 创建文件夹
cmd rd命令 删除文件夹
cmd move命令 移动文件(夹)
字符串查找 cmd find命令
常用的批处理实用技巧
批处理 添加隐藏用户代码
服务器 安全设置 批处理
WIN2003 服务器安全配置批处理文件
批处理 实现定时关机、注销、重启、锁定等功能

DOS/BAT 中的 把某个目录下所有txt中第三行第四个数字相加


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-11   浏览: 73 ::
收藏到网摘: n/a

复制代码 代码如下:

@echo off
:: 把某个目录下所有txt中第三行第四个数字相加
::
set num=0
setlocal enabledelayedexpansion
:: 其实用skip=2来跳过头两行的效率更高
for %%i in (*.txt) do (
set file=%%i
for /f "tokens=1* delims=:" %%j in ('findstr /n . !file!') do (
set var=%%k
if %%j equ 3 (set num_=!var:~4,1!)&& set /a num=!num!+!num_!
)
)
echo 相加后的结果是 %num%
pause
goto :eof
@echo off
:: 把某个目录下所有txt文件中第十行第三列的数字相加
:: code by jm 2006-9-9 CMD@XP
setlocal enabledelayedexpansion
for %%i in (*.txt) do (
set file=%%i
set count=0
for /f "skip=9 tokens=3" %%j in (!file!) do (
set /a count+=1
if !count! equ 1 set /a sum+=%%j
)
)
echo 相加后的结果是 %sum%
pause