批处理 提取文本中指定字符后的所有内容写入另一文件

例如:文本a.txt
aaa
bbb
key:
111
222
name: 480FC
333
sdfsdf

提取key:后面的所有内容,并写入到480FC.txt,文件名是name:后面的字符

11
222
name: 480FC
333
sdfsdf

第1个回答  2018-06-09
@echo off
(for /f "delims=" %%a in ('type data.txt') do (
if defined out (
echo;%%a
echo;%%a|find "name:">nul&&set "name=%%a"
)
if "%%a" equ "key:" set "out=1"

))>$temp
if defined name set name=%name:*:=%
if defined name ren "$temp" "%name%.txt"

追问

厉害,谢谢。
再问一下,文件名能不能定义成任意的,不一定是data.txt
比如,111.txt,222.txt,都可以执行。

本回答被提问者和网友采纳
相似回答