[英]Batch file to sum numbers from text files and write that total value to text file
我在folder1中有300个文本文件,在folder2中有300个文本文件
以下是一个文本文件的示例内容
india,car,10
uk,car,20
us,car,50
我想对第三列求和并将该总数写入相同的文本文件。 例,
for /f "tokens=3 delims=," %%a in (folder1\textfile1.txt) do set /a total+=%%a
echo %total% >folder1\textfile1.txt
上面的代码将在textfile1.txt中写入80
请告诉您如何使用批处理文件对所有300个文本文件执行相同的操作。
@echo off
for %%F in (
folder1\*.txt
folder2\*.txt
) do (
set /a total=0
for /f "usebackq tokens=3 delims=," %%a in ("%%F") do set /a total+=%%a
echo %total% >"%%F"
)
重要事项:
1)您正在用包含总数的一行替换每个文件的内容(许多行)。 如果要保留原始数据并将总数添加到末尾,则需要使用>>
代替:
echo %total% >>"%%F"
2)批处理可计算的最大整数值为2,147,483,647。 每个文件的总和必须小于或等于该数字,否则将失败。 如果您的总数可能超过该值,那么您将不得不使用其他语言。 也许是JScript,VBScript或PowerShell。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.