Batch file 具有批处理功能的反钓鱼软件

Batch file 具有批处理功能的反钓鱼软件,batch-file,Batch File,我正在尝试做一个基本的反钓鱼软件与批处理。我用它来删除类似gmail登录页面的html文件。这是我的密码: @echo off color fc title Anti-Phishing cls echo =============== echo [Anti-Phishing] echo =============== echo If There's no message ,You are protected. set /p a=Enter a HTML file to scan: for /f

我正在尝试做一个基本的反钓鱼软件与批处理。我用它来删除类似gmail登录页面的html文件。这是我的密码:

@echo off
color fc
title Anti-Phishing
cls
echo ===============
echo [Anti-Phishing]
echo ===============
echo If There's no message ,You are protected.
set /p a=Enter a HTML file to scan: 
for /f %%x in ('findstr /i /m "gmail google add account" %a%.html') do (
    if /i %%x equ %a%.html (
        for /f %%z in ('findstr /i /b /m "tskill del copy shutdown ipconfig ren reg" %a%.html') do (
            if /i %%z equ %a%.html (
                cls
                echo Fake Page Detected!!
                del %a%.html
                echo %a%.html was deleted....
                pause >nul
            )
        )
    )
)
pause >nul

它说它无法打开html文件。请帮我理解我的错误。我是批处理的新手。

这是您的代码有点改进:

@echo off
color fc
title Anti-Phishing
cls
echo ===============
echo [Anti-Phishing]
echo ===============
echo If There's no message ,You are protected.
set "HtmlFile=""
set /p "HtmlFile=Enter a HTML file to scan: "
set "HtmlFile=%HtmlFile:"=%"
if "%HtmlFile%"=="" goto :EOF
if "%HtmlFile:~-5%"==".html" set "HtmlFile=%HtmlFile:~0,-5%"
if "%HtmlFile%"=="" goto :EOF
if not exist "%HtmlFile%.html" (
    echo File "%HtmlFile%.html" not found.
    echo.
    echo Exit with any key ...
    pause>nul
    goto :EOF
)
for /f %%x in ('%SystemRoot%\System32\findstr.exe /i /m "gmail google add account" "%HtmlFile%.html"') do (
    if /i %%x equ "%HtmlFile%.html" (
        for /f %%z in ('%SystemRoot%\System32\findstr.exe /i /b /m "tskill del copy shutdown ipconfig ren reg" "%HtmlFile%.html"') do (
            if /i "%%z" equ "%HtmlFile%.html" (
                cls
                echo Fake Page Detected!!
                del "%HtmlFile%.html"
                echo "%HtmlFile%.html" was deleted.
                pause >nul
            )
        )
    )
)
pause >nul
该批处理文件首先定义了一个环境变量
HtmlFile
,其中只有一个双引号作为字符串值

用户提示后的下一行将从字符串中删除用户输入的所有双引号。如果提示时用户只按回车键或回车键,而不输入任何文件名,则会产生一个空字符串。在这种情况下,批处理文件将退出

接下来,批处理代码检查HTML文件的名称是否以“.HTML”结尾输入。由于批处理代码会自动添加文件扩展名(出于未知原因),所以会从文件名中删除字符串“.html”

可能会再次出现剩余字符串现在是空字符串的情况

最后,批处理文件检查是否可以在文件系统中找到具有绝对路径或相对路径的文件名。否则,将输出错误消息

请注意,此批处理文件原样无法使用HTTP(超文本传输协议)或其他协议来评估网页以访问WWW中的文件。它只能用于通过UNC路径访问本地驱动器、网络驱动器或公共共享上的文件


如果批处理文件用户输入的文件名(带或不带路径)中存在空格或其他特殊字符,则所有对环境变量
HtmlFile
的引用都会根据需要用双引号括起来。

您的html文件名是什么?添加一行,如
echo“%a%”%%x“&pause
,然后查看控制台上的内容。