【问题标题】:Trimming each line in a text file to 30 characters将文本文件中的每一行修剪为 30 个字符
【发布时间】:2016-01-23 03:55:47
【问题描述】:

我有如下文本文件

输入示例文本文件

69273ww01/080-100 1021/00 11123
80381ew20/937-134 1372/92 12737298323
02ws88749/263-379 2836/39 121
4793de592/343-283 7384/49 233792740562263

必需的输出文本文件

69273ww01/080-100 1021/00 111
80381ew20/937-134 1372/92 127
02ws88749/263-379 2836/39 121
4793de592/343-283 7384/49 233

我想取出每一行并删除该行中第 30 个字符之后的所有内容。不幸的是,我不知道从哪里开始。任何指导将不胜感激。

【问题讨论】:

标签: batch-file trim


【解决方案1】:
@ECHO OFF
SETLOCAL ENABLEDELAYEDEXPANSION
SET "sourcedir=U:\sourcedir"
SET "destdir=U:\destdir"
SET "filename1=%sourcedir%\q34959432.txt"
SET "outfile=%destdir%\outfile.txt"
(
 FOR /f "usebackqdelims=" %%a IN ("%filename1%") DO (
  SET "line=%%a"
  ECHO(!line:~0,30!
 )
)>"%outfile%"

GOTO :EOF

您需要更改sourcedirdestdir 的设置以适应您的情况。

我使用了一个名为 q34959432.txt 的文件,其中包含您的数据用于我的测试。

生成定义为 %outfile% 的文件

您发布的数据输出长度为 29 个字符,而不是 30 个。您需要进行的更改应该很明显。

【讨论】:

    猜你喜欢
    • 2011-01-07
    • 1970-01-01
    • 2011-08-22
    • 1970-01-01
    • 2016-05-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-09
    相关资源
    最近更新 更多