批量复制包括空格的文本行

Batch to duplicate text lines including spaces

我正在使用 Windows 7. 我需要一个批处理文件来将一个文本文件的行复制到单个文件。 到目前为止,我编写的批处理文件几乎可以完美运行:

@echo off
setlocal enabledelayedexpansion
set Counter=1
for /f %%x in (OriginalList.txt) do (
set "Line_!Counter!=%%x"
set /a Counter+=1
)

set /a NumLines=Counter - 1

Echo %Line_1% >A1.txt
Echo %Line_2% >A2.txt
Echo %Line_3% >A3.txt
Echo %Line_4% >A4.txt
Echo %Line_5% >A5.txt

我遇到的问题是任何包含 space 的文本行,即

C:\Users\My Account\Documents\LINE SAVING

另存为

C:\Users\My

如何存储整行?

您的问题:space 是 for 的标准分隔符之一。如果您没有定义令牌,它默认为一个。所以你只能得到第一个 space 或逗号或分号之前的字符串,...

解决方案:将分隔符设置为 none(无分隔符):

for /f "delims=" %%x in (OriginalList.txt) do (