[CMD] Не работает FOR

  • Автор темы Автор темы Keller
  • Дата начала Дата начала

Keller

Новый пользователь
Сообщения
7
Реакции
0
Я реально уже задолбался, короче есть скрипт я использую данный цикл for /f "delims=" %%a in ("123") do set test=%%a, и если сделать echo %test%, пишет "Режим вывода команд на экран (ECHO) отключен.", но а если сделать так for /f "delims=" %%a in ("123") do echo %%a, оно выводит "123".
Скрипт, который я написал выше это пример, но а часть моего выглядит так:
CMD/BATCH:
@echo off
call :1
pause
exit /b
:1
for /f "delims=" %%a in ("123") do set test=%%a
echo %test%
pause
exit /b
Пж помогите!
 
Последнее редактирование:
Не материтесь. На первый раз предупреждение, потом - бан.
 
У меня в обоих случаях эхо выводит число 123.
 
А блин, походу не тот пример, лан короче кину свой скрипт...
Он ещё не закончен...
Код:
@echo off
title Just Sctipt Client
for /f "delims=" %%a in ('inifile "cfg\config.ini" [Settings]') do %%a
if %settings.autohide%==true (
cmdfocus /min
)
for /f "delims=" %%a in ('inifile "cfg\lang.ini" [%settings.lang%]') do %%a
for /f "delims=" %%a in ('inifile "cfg\config.ini" [User]') do %%a
for /f "delims=" %%a in ('inifile "cfg\config.ini" [HOST]') do %%a
for /f "delims=" %%a in ('inifile "cfg\config.ini" [Script]') do %%a
for /f "delims=" %%a in ('curl "%host.url%?login=%user.login%&password=%user.password%&version=%script.version%&type=test"') do set code=%%a
echo %code%
if NOT %code%==2 (
if %code%==56 (
call :update
goto 1
) else (
echo Не удалось подключиться к серверу, попробуйте немного позже или свяжитесь с автором в ВК: vk.com/keller18306
cmdfocus /center /beep
pause>nul
exit /b
)
) else (
cls
goto 1
)
echo Ошибка!
cmdfocus /center /beep
pause>null
exit /b
:1
if %settings.debug%==true (
for /f "delims=" %%a in ('curl "%host.url%?login=%user.login%&password=%user.password%&version=%script.version%&type=update"') do set code=%%a
echo %code%
call :update
echo [%date% %time%] %lang.send_data_to_server%
) else (
for /f "delims=" %%a in ('curl "%host.url%?login=%user.login%&password=%user.password%&version=%script.version%&type=update"') do set code=%%a>nul
call update
)
TIMEOUT /T 5 /NOBREAK>nul
goto 1
echo Ошибка!
pause>nul
exit /b

rem ____________FUNCTIONS_____________
:update
if %code%==56 (
for /f "delims=" %%a in ('curl "%host.url%?get=update"') do set url=%%a
echo %url%
pause
if %settings.debug%==true (
echo %url%
wget -O update.zip %url%
7z e \update\update.zip -o\update\ -y
) else (
wget -O update.zip %url%>nul
7z e \update\update.zip -o\update\ -y>nul
)
pause
)
exit /b
rem ______________END_________________
------------------------------------------------------------------------------------------------------------------------

% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 2 100 2 0 0 32 0 --:--:-- --:--:-- --:--:-- 32
56
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 56 100 56 0 0 823 0 --:--:-- --:--:-- --:--:-- 811
Режим вывода команд на экран (ECHO) отключен.
Для продолжения нажмите любую клавишу . . .
В папке со скриптом есть 7z.exe wget curl и в паке cfg есть config.cfg и lang.cfg
 
Последнее редактирование модератором:
Последнее редактирование:
CMD/BATCH:
@echo off
title Just Sctipt Client
for /f "delims=" %%a in ('inifile "cfg\config.ini" [Settings]') do %%a
if %settings.autohide%==true (
cmdfocus /min
)
for /f "delims=" %%a in ('inifile "cfg\lang.ini" [%settings.lang%]') do %%a
for /f "delims=" %%a in ('inifile "cfg\config.ini" [User]') do %%a
for /f "delims=" %%a in ('inifile "cfg\config.ini" [HOST]') do %%a
for /f "delims=" %%a in ('inifile "cfg\config.ini" [Script]') do %%a
for /f "delims=" %%a in ('curl "%host.url%?login=%user.login%&password=%user.password%&version=%script.version%&type=test"') do set code=%%a
echo %code%
if NOT %code%==2 (
if %code%==56 (
call :update
goto 1
) else (
echo Не удалось подключиться к серверу, попробуйте немного позже или свяжитесь с автором в ВК: vk.com/keller18306
cmdfocus /center /beep
pause>nul
exit /b
)
) else (
cls
goto 1
)
echo Ошибка!
cmdfocus /center /beep
pause>null
exit /b
:1
if %settings.debug%==true (
for /f "delims=" %%a in ('curl "%host.url%?login=%user.login%&password=%user.password%&version=%script.version%&type=update"') do set code=%%a
echo %code%
call :update
echo [%date% %time%] %lang.send_data_to_server%
) else (
for /f "delims=" %%a in ('curl "%host.url%?login=%user.login%&password=%user.password%&version=%script.version%&type=update"') do set code=%%a>nul
call update
)
TIMEOUT /T 5 /NOBREAK>nul
goto 1
echo Ошибка!
pause>nul
exit /b

rem ____________FUNCTIONS_____________
:update
if %code%==56 (
for /f "delims=" %%a in ('curl "%host.url%?get=update"') do set url=%%a
echo %url%
pause
if %settings.debug%==true (
echo %url%
wget -O update.zip %url%
7z e \update\update.zip -o\update\ -y
) else (
wget -O update.zip %url%>nul
7z e \update\update.zip -o\update\ -y>nul
)
pause
)
exit /b
rem ______________END_________________
Короче когда вызываю call :update For не хочет нормально работать...
иначе отступы теряются и код нечитабелен.
У меня код вообще не собирается (вылетает). Потрудитесь хотя бы скобки правильно расставить.
У меня нет времени просматривать всё это целиком.
Вылетает потому что нету curl и inifile
Ща кину ссылку на скачивание всего!
 
Последнее редактирование:
Еще актуально?
 
Назад
Сверху Снизу