如何从文本文件的最后一行提取字符串-Windows批处理脚本

如何从文本文件的最后一行提取字符串-Windows批处理脚本

我有一个这种格式的 .txt 文件

123|abc|23456
234|rsty|68589
890|gfyu|5679
TRAILER|3|

如何从“TRAILER|”和“3”之间最后一行中提取“3”?需要帮助。

答案1

如果总是有 4 行,如图所示,最后一行是“TRAILER”:

for /f "skip=3 tokens=2 delims=|" %l in (List.txt) do @echo %l

如果有任意数量的行包含“TRAILER”行,则可在任意位置出现:

for /f "tokens=2 delims=|" %l in ('type List.txt ^| find "TRAILER"') do @echo %l

for /?会教你什么跳过代币德利姆斯选项的含义,尽管应该不难理解。另外,请记住,在批处理文件中使用命令时,每个 % 符号要重复两次。

答案2

作为已经给出的答案的替代方案,您可以安装Windows 上的 Gnu并做

tail -n 1 <your file here> | awk -F"|" "{print $2;}"

相关内容