
批處理如何分批撥號手頭有20個帳號,需要連接5個帳號后暫停10秒鐘再連接下一組5個帳號需要在這個批處理文件中添加暫停命令連接5個帳號后暫停10秒鐘再連接下一組5個帳號,以此循環(huán),直到寬帶帳號中的帳號測試完為止因為帳號跟密碼20個帳號中隨機的,所以每天連接的時候得測試可用性。望版主幫忙修改,謝謝
nclick="copycode($('code0'));">復制代碼
- @title 分組寬帶帳號處理程序
- @echo off & setlocal enabledelayedexpansion
- set userfile=寬帶賬號.txt
- set passfile=寬帶密碼.txt
- set pppname=寬帶連接
- set outfile=成功連接.txt
- :choose
- echo.&echo 本批處理實現(xiàn)以下功能:
- echo.&echo 1 - 創(chuàng)建 !pppname!(配合模擬按鍵實現(xiàn))
- echo.&echo 2 - 測試固定的寬帶賬號及密碼
- echo.&echo 3 - 寬帶賬號固定,密碼從文本 %adslpass% 里提取逐一測試
- echo.&echo 4 - 寬帶密碼固定,賬號從文本 %adsluser% 里提取逐一測試
- echo.&echo 5 - 寬帶賬號及密碼均從以上文本里提取逐一測試
- echo.&echo 0 - 退出批處理
- echo.&set /p choose=請輸入你選擇的序號并回車:
- if %choose% equ 0 exit
- if %choose% equ 1 goto :buildppp
- if %choose% equ 2 goto :user1pass1
- if %choose% equ 3 goto :user1passx
- if %choose% equ 4 goto :pass1userx
- if %choose% equ 5 goto :userxpassx
- cls&echo.&echo 輸入的序號有誤,請重新選擇!&set choose=&goto :choose
- :buildppp
- ::創(chuàng)建新寬帶連接
- set vbs=buildppp.vbs
- (echo Set WshShell = CreateObject^(Wscript.Shell^)
- echo strCommandLine = rasphone -a !pppname!
- echo WshShell.Run^(strCommandLine^)
- echo Wscript.Sleep 1000
- echo WshShell.SendKeys R
- echo Wscript.Sleep 30
- echo WshShell.SendKeys {ENTER}
- echo Wscript.Sleep 30
- echo WshShell.SendKeys {ENTER}
- echo Set WshShell = Nothing
- )>%vbs%
- cscript //nologo %vbs%
- del %vbs%
- goto :exit
- :user1pass1
- echo.&set /p user=請輸入寬帶賬號:
- echo.&set /p pass=請輸入寬帶密碼:
- call :check1
- goto :exit
- :user1passx
- set user=改成固定的寬帶賬號
- call :check0
- for /f tokens=* %%a in ('type %passfile%') do (
- if !end! equ 1 (set end=&goto :exit)
- set pass=%%a&call :check1
- )
- goto :exit
- :pass1userx
- set pass=改成固定的寬帶密碼
- call :check0
- for /f tokens=* %%a in ('type %userfile%') do (
- if !end! equ 1 (set end=&goto :exit)
- set user=%%a&call :check1
- )
- goto :exit
- :userxpassx
- call :check0
- for /f tokens=* %%a in ('type %userfile%') do (
- set user=%%a
- call :check2
- )
- goto :exit
- :exit
- ::如果要連接最后一組成功的賬號密碼的話請取消下一行的前面兩個冒號
- ::rasdial !pppname! !lastuser! !lastpass! >nul
- echo.&echo 所有操作完畢,按任意鍵退出&pause>nul&exit
- :check0
- rasdial|find 已連接>nul
- if !errorlevel! equ 0 for /f skip=1 tokens=* %%a in ('rasdial') do (rasdial %%a /d >nul&set pppname=%%a&goto :eof)
- goto :eof
- :check1
- echo.&set /p str=正在連接賬號 !user!=!pass! <nul
- rasdial !pppname! !user! !pass! >nul
- rasdial|find 已連接>nul
- if !errorlevel! equ 0 (
- ping /n 2 www.baidu.com >nul
- IF !errorlevel! equ 0 (
- echo [連接成功]
- echo>>%outfile% !user!=!pass!
- set lastuser=!user!
- set lastpass=!pass!
- set end=1
- )else (
- echo.
- )) else (echo.)
- rasdial !pppname! /d >nul
- goto :eof
- :check2
- for /f tokens=* %%b in ('type %passfile%') do (
- if !end! equ 1 (set end=&goto :eof)
- set pass=%%b
- call :check1
- )
- goto :eof

