批量编辑文本文件中唯一行的结尾

问题描述

当前文本文件如下:

File1=vhm47
Title1=asdffsag
Length1=3677
File2=d1536
Title2=fasgasgf
Length2=342
File3=vhm46
Title3=gdsafhhds
Length3=3601
File4=d1452

我需要在每个文件行的末尾添加“ .enc”。但是我不能批量编辑,因为每个文件行都包含一个唯一的编号。一次有150到700个文件

解决方法

尝试一下:

@echo off

setlocal enableDelayedExpansion

set "FILE_=.\info.txt"
set "NEW_FILE=.\info2.txt"
set "toContain=File"
set "toAdd=.enc"

break>"%NEW_FILE%"
for /f "usebackq tokens=* delims=" %%a in ("%FILE_%") do (
    set line=%%a
    if "!line:%toContain%=!" EQU "!line!" (
        (echo(!line!)>>"%NEW_FILE%"
    ) else (
        (echo(!line!%toAdd%)>>"%NEW_FILE%"
    )
)

在开始时,设置文件的正确路径以及将在其中添加扩展名的新文件的路径