我在制表符分隔的文本文件的第一列和最后一列中有数据。我想使用批处理删除文件的第一列和最后一列。我尝试使用cut
命令,但 Windows 不支持它。
答案1
- 输入数据分为 4 列,每列之间以制表符分隔(第 3 列有嵌入空格)。
- 如果数据值没有空格则
delims=<tab>
是可选的。 - 源文件名没有空格(但输出文件名可能有空格:“File 2 Col Out.txt”)
运行命令提示符并输入(在两个地方用实际的 tab 键代替<tab>
):
CMD /f:off
FOR /f "tokens=2,3 delims=<tab>" %B in (TabFile.txt) do @echo %B<tab>%C>> 2ColFile.txt
CMD /f:on
例子:
c:\DeleteMe>type tabfile.txt
123 ABC Ap ple 321
135 BDF Bro wn 642
c:\DeleteMe>CMD /f:off
Microsoft Windows [Version 6.0.6002]
Copyright (c) 2006 Microsoft Corporation. All rights reserved.
c:\DeleteMe>FOR /f "tokens=2,3 delims= " %B in (TabFile.txt) do @echo %B %C>> 2ColFile.txt
c:\DeleteMe>type 2colfile.txt
ABC Ap ple
BDF Bro wn
c:\DeleteMe>CMD /f:on