我需要使用Windows批处理脚本将一个文本文件拆分成多个文件,有人可以点亮我吗?
示例文本文件:
abc1-10
abc1-11
abc1-12
xyz2-01
xyz2-02
xyz3-01
xyz3-02
在这种情况下,它必须分为3个文件,第一个包含abc1-xx
行,第二个包含xyz2-xx
,xyz3-xx
包含最后一个
答案 0 :(得分:6)
您可以使用批处理文件,但为什么不使用FINDSTR命令?
findstr /R "^abc1-" sample.txt > file1.txt
findstr /R "^xyz2-" sample.txt > file2.txt
findstr /R "^xyz3-" sample.txt > file3.txt
答案 1 :(得分:5)
这可能有所帮助 - 它会将文本拆分为
的单独文件 abc1.txt
xyz2.txt
xyz3.txt
@echo off
for /f "tokens=1,* delims=-" %%a in ('type "file.txt"') do (
>>"%%a.txt" echo(%%a-%%b
)
pause
答案 2 :(得分:5)
使用cgwin命令SPLIT。
样品:
每隔500行计算一个文件:
split -l 500 [filename.ext]
更多信息:split --help