如何从 CMD 中的文本文件中提取电子邮件和密码?

如何从 CMD 中的文本文件中提取电子邮件和密码?

我有一个名为的文本文件文件.txt

.File.txt 的图片 .txt 文件的组合图片

我正在运行以下代码,仅从上述文本文件 file.txt 中过滤 mail:pass

@rem.^
                Combo: [email protected]:password^
                As Combo:^
                [email protected]:ajfbdf^ **Unwanted Text with symbols, numbers or text , basically anything....**^
                
                As Combo: [email protected]:password@1^ **Unwanted Text with symbols, numbers or text , basically anything....** ^
                [email protected]:passypassyword123^
                [email protected]:youtube123^

@echo off & type nul >.\mail.txt & for /f "tokens=*delims=" %%i in ('type combo.txt')do (
echo=%%~i|find "@">nul && for /f "tokens=01,02,03delims=:" %%I in ('call echo=%%~i')do (
echo=%%~I|find "@">nul && set "_m_p=%%I:%%J" || set "_m_p=%%~J:%%~K") && for /f %%E in ('
echo=%%~J')do cmd /v/c "echo=!_m_p: =!"|find "@")>>.\mail.txt ||>nul call nul 2>nul 2>&1

在 mail.txt 中获得输出 输出图像

mail.txt 中的预期输出,

[email protected]:ajfbdf
[email protected]:password@1
[email protected]:password
[email protected]:passypassyword123
[email protected]:youtube123

文本文件的每个文本行中的邮件 ID 和密码将不同。例如,上面给出的邮件 ID 和密码是随机的。

恳请大家分享有助于获得预期输出的代码。我对批处理不太熟悉,因为我才刚开始学习,所以我真的需要帮助。提前谢谢您。

答案1

获取每一行 (%%a) 并将其拆分为“单词”( %%b)。
测试每个“单词”是否符合所需格式(包含@:)。
如果匹配,echo则为 。
最后,将输出重定向到结果文件。

@echo off
setlocal
(for /f "tokens=*" %%a in (combo.txt) do (
  for %%b in (%%a) do (
    echo "%%b"|findstr "@.*:" >nul && echo %%b
  )
))>mail.txt
type mail.txt 

答案2

试试这个代码,你必须将文本文件拖放到批处理文件中。它应该将“mail”添加到原始文件的文件名中。

@echo off

if not "%~x1"==".txt" exit

for /f "tokens=1-2 delims=: " %%a in ('type "%~1" ^|find /i "@"') do >>"%~n1.mail.txt" echo %%~a:%%b

在此处输入图片描述

相关内容