У меня есть следующая функция, которая работает следующим образом: Вы вводите строку, которая похожа на: text text=text
как это: call :afterchar text text=text
и она выводит text=text
в строке, не создавая новую. Хотя в настоящее время он работает хорошо, он также выводит "Синтаксис этой команды неверен" при первом запуске. Я не понимаю, что вызывает эту ошибку.
@echo off
:read
shift
if "%1"=="" set err=2 & goto help
if "%2"=="where" goto where
set DB=%1.db
if not exist "C:\users\Public\Temp\%DB%" call :c 0c "Database not found: %2" & exit /b 1
setlocal EnableDelayedExpansion
set numline=0
for /f "tokens=1,2,3,4,5,6,7,8,9,10* delims=# skip=1" %%A in (C:\users\Public\Temp\%DB%) do (
set /a numline+=1
if not "%%A"=="" call :afterchar %%A
if not "%%B"=="" call :afterchar %%B
if not "%%C"=="" call :afterchar %%C
if not "%%D"=="" call :afterchar %%D
if not "%%E"=="" call :afterchar %%E
if not "%%F"=="" call :afterchar %%F
if not "%%G"=="" call :afterchar %%G
if not "%%H"=="" call :afterchar %%H
if not "%%I"=="" call :afterchar %%I
if not "%%J"=="" call :afterchar %%J
echo.
)
goto skpp
:afterchar
echo|set /p=" %2=%3 "
exit /b
:skpp
if %errorlevel%==0 call :C 0a "Success."
exit /b