我遇到了问题,我想要一个批处理脚本,它会读出文本文件中每一行的第一个数字(newfile.txt
)。
在newfile.txt
中有5行,每行有5个数字,如下所示:
01101
00100
10011
11011
01010
现在我希望脚本读取第一个列。我认为,如果脚本将从每一行获取第一个数字并将其设置为变量,那么这是可能的。在这种情况下,它将是00110
。在此之后它应该删除每行中的第一个数字,以便只有
1101
0100
0011
1011
1010
留在第一行。
答案 0 :(得分:0)
使用FOR
循环迭代文件内容,剪切第一个字符并将其余字符写入另一个文件:
@ECHO OFF
SETLOCAL EnableDelayedExpansion
SET infile=newfile.txt
SET outfile=newfile2.txt
:: DEL !outfile!
FOR /F %%G IN (!infile!) DO (
SET _tmp=%%G
SET first=!_tmp:~0,1!
SET rest=!_tmp:~1!
ECHO !rest! >> !outfile!
)
:: MOVE !outfile! !infile!
您可以在第3行和第4行设置输入/输出文件名。输出文件将包含您在问题中指定的内容。扩展批处理文件以处理!first!
中的第一个字符到您的链接(您没有说明如何处理它)。
如果您要将原始文件替换为修改后的(删除第一个字符),则可以取消注释(删除::
)DEL
和MOVE
行。但请先在原始文件的副本上试一试!