如何使用批处理过滤文本文件中具有特定组合的随机行?

时间:2019-06-10 09:00:01

标签: batch-file cmd

我正在尝试使用批处理程序从文本文件中的随机行中过滤特定组合。

这是仅过滤来自电子邮件:pass组合中名为file.txt的文本文件中的电子邮件和密码。不幸的是,同一文本文件中的其他行也具有相同的格式someword:blank(如下所示的示例)

我使用的代码,

for /f "tokens=1" %%a in ('type file.txt^|find ":"') do >>output.txt echo %%a

file.txt包含

Username:
Password:
random1@gmail.com:password111
Subscription:
Recurring
Status:
Country:
Username:
Password:
random2@gmail.com:password222
Subscription:
Recurring
random3@gmail.com:password333
Status:

output.txt中的预期输出是

random1@gmail.com:password111
random2@gmail.com:password222
random3@gmail.com:password333

但是,我在output.txt中得到的实际输出是

Username:
Password:
random1@gmail.com:password111
Subscription:
Recurring
Status:
Country:
Username:
Password:
random2@gmail.com:password222
Subscription:
Recurring
random3@gmail.com:password333
Status:

输入文件的输出相同。

1 个答案:

答案 0 :(得分:0)

您甚至不需要for循环即可完成此操作。只需过滤@

find "@" file.txt > output.txt