devo problema circa IF ELSE nello script Batch Command ...Se il problema ELSE comando batch
In Blocco note:
Codice:
:CHECKACCOUNT
if /I "%user%"=="insertusername" (GOTO :ACCOUNT) ELSE (GOTO :CHECKPASSACCT)
:CHECKPASSACCT
if /I "%pass%"=="insertpassword" (GOTO :ACCOUNT) ELSE (GOTO :COUNTER)
al comando:
Codice:
(al momento non era possibile.
pieno Codice Script:
@echo off
::SETTINGS:::::::::::::::::::::::
set filetxt =userpass.txt
set log=logfile.log
set timer=900
::set default = true
::set user = 0
::set pass = 0
:::::::::::::::::::::::::::::::::
:STARTER
ECHO.>>%log%
ECHO ========START========>>%log%
SetLocal EnableDelayedExpansion
Set n=
Set _InputFile=%filetxt%
For /F "tokens=*" %%I IN (%_InputFile%) DO (
Set /a n+=1
Set acct!n!=%%I
)
set router_ip=%acct1%
set user=%acct2%
set pass=%acct3%
GOTO :CHECKFILE1
:CHECKFILE1
CLS
IF EXIST curl.exe (GOTO :CHECKFILE2) else (
ECHO ERROR: curl.exe was not found.>>%log%
ECHO ERROR: curl.exe was not found.
ECHO.
ECHO.
GOTO :PAUSEEXIT
)
:CHECKFILE2
CLS
IF EXIST sleep.exe (GOTO :CHECKACCOUNT) else (
ECHO ERROR: sleep.exe was not found.>>%log%
ECHO ERROR: sleep.exe was not found.
ECHO.
ECHO.
GOTO :PAUSEEXIT
)
:CHECKACCOUNT
if /I "%user%"=="insertusername" GOTO ACCOUNT
GOTO CHECKPASSACCT
:CHECKPASSACCT
if /I "%pass%"=="insertpassword" GOTO ACCOUNT
GOTO COUNTER
:ACCOUNT
CLS
::if %default% = true (GOTO :COUNTER) ELSE (
ECHO To edit/change USERNAME and PASSWORD... Please type: OPTION
ECHO.
SET /P user="Please enter the username of your Router:"
IF /I %user%==OPTION (Goto :EDITBAT)
CLS
ECHO To edit/change USERNAME and PASSWORD... Please type: OPTION
ECHO.
SET /P pass="Please enter the password of your Router:"
IF /I %pass%==OPTION (Goto :EDITBAT)
CLS
set /a i = 1
GOTO :CHECKACCOUNT
::)
:EDITBAT
start /WAIT notepad %filetxt%
set router_ip=%acct1%
set user=%acct2%
set pass=%acct3%
GOTO :CHECKACCOUNT
:COUNTER
IF %i%==0 (GOTO :RESETROUTER) ELSE (
ECHO WAIT %i% seconds...
sleep 1
set /a i = i - 1
CLS
GOTO :COUNTER
)
:RESETROUTER
CLS
ECHO READY to RESET....
ECHO Preparing....
sleep 2
sleep 2
CLS
ECHO Processing....
sleep 5
sleep 2
CLS
ECHO Success....
sleep 5
set /a i = %timer%
CLS
GOTO :COUNTER
:PAUSEEXIT
PAUSE
:EXIT
ECHO.>>%log%
ECHO ========END OF LOG FILE========>>%log%
In realtà, se non c'è alcun codice tra i due blocchi, è possibile semplificarlo ulteriormente e rimuovere la riga 'GOTO CHECKPASSACCT' e la riga': CHECKPASSACCT'. – bta
continua a non funzionare: (..... Cerca codice script completo ... – user453089
Quando dici che non funziona ancora, quale errore ti dà e su quale riga si verifica l'errore? Non può essere lo stesso errore, dal momento che l'offendente '(' non esiste più. – bta