如何使用批处理来解析文件中每行的第一个单词

时间:2018-11-28 07:37:29

标签: windows batch-file cmd

我的文件夹中有n个文本文件,格式如下

File1.txt

001@12345    Value1 
002@12345    Value2

File2.txt

003@12345    Value3 
004@12345    Value4

我需要获取@符号前的数字总和。如何使用Windows批处理脚本获取此信息?

1 个答案:

答案 0 :(得分:2)

键入文件,找到相关的行,将for /f放在@之前,以得到第一部分并进行总结:

@echo off
set sum=0
for /f "delims=@" %%a in ('type file*.txt ^|find "@"') do set /a sum+=1%%a-1000
echo %sum%

注意:有一些限制:在当前格式中,它仅适用于三位数字,并且由于INT32数字而导致总和受到限制。 (最多2147483647,但以0开头时克服了克服被视为八进制数字的技巧而减少了)