批处理脚本不会读取所有行

时间:2017-07-04 08:24:23

标签: batch-file

我编写了一个批处理脚本来将文本添加到每行的末尾,但我的批处理脚本在文本文件的第4行停止。但是当我将文本文件中的数据复制到另一个文本文件并运行批处理脚本时,它运行正常。你能帮我找出什么是错的吗?

@echo off
set Addtext=SMS
for /f "usebackq delims="  %%l in (txt.dat) Do (
  echo %%l^|%Addtext% >> C:\Users\bi\Desktop\new.txt
   )

管道中的文本文件已分隔。

1 个答案:

答案 0 :(得分:0)

以下示例将添加一个 | 管道,然后将%AddText%的内容添加到%SrcFile%中每个非空行的末尾并输出到%DstFile%

从批处理文件:

@ECHO OFF
SET "SrcFile=file.txt"
SET "DstFile=%UserProfile%\Desktop\new.txt"
SET "AddText=SMS"
(FOR /F "USEBACKQ DELIMS=" %%A IN ("%SrcFile%") DO ECHO %%A^|%AddText%
)>"%DstFile%"

脚本的此功能取决于%SrcFile%的格式编码。