我有大约1000个txt.files包含很多数据,如电子邮件地址,名称,邮政编码,服务......在此文件夹中:C:\ Users \ dupont \ Documents \ test 我想提取所有电子邮件地址,只发送此文件夹上的电子邮件地址,然后将其复制到另一个.txt文件中。
所以我创建了一个像这样的.bat来提取电子邮件地址:
findstr @ C:\Users\dupont\Documents\test\ad.txt >C:\Users\dupont\Documents\test\results.txt
pause
问题是,它提取了所有的行 而且,我不知道如何询问命令,用' @'来划定字符串的搜索范围。到一个空格,制表符,回车 实际上,命令必须与@,@(直到空格)之前的单词和@之后的单词匹配(直到空格
感谢您的帮助 祝你有愉快的一天
答案 0 :(得分:0)
对于每个文本文件(%%f
),依次处理每一行(%%a
)。用空格将行分为元素(%%b
)(标准分隔符为空格和TAB),如果元素包含@
,则将其打印出来:
@echo off
for %%f in (*.txt) do (
for /f "tokens=*" %%a in (%%f) do (
for %%b in (%%a) do (
echo %%b|find "@"
)
)
)