Пакетный файл не работает? - PullRequest
0 голосов
/ 22 февраля 2012

Предполагается разделить то, что вы вводите, а затем установить каждый символ в другую переменную. Теперь он делает тонну пустых строк после того, как вы наберете первое. Вот оно:

@echo off && setlocal EnableDelayedExpansion
:home
set ran=%random%
if exist "%temp%\%ran%temp.txt" goto home
set /p o=""
rem putting %o% in temp file
echo.%o%>>"%temp%\%ran%temp.txt"
rem determaning num of bytes in txt file
for %%a in (%temp%\%ran%temp.txt) do set /a ol=%%~za
rem subtracting 2 from num of bytes
set /a ol -=2
rem Deleting temp file
del "%temp%\%ran%temp.txt"
goto pla
:pla
set v=0
set a=-1
set b=0
:pl
set /a v+=1
set /a a+=1
set /a b+=1
set var%v%=!o:~%a%,%b%!
if %b% == %ol% goto show
goto pl
:show
set vv=0
:showw
set /a vv+=1
echo.!var%vv%!
if %vv% == %v% goto end
goto showw
:end
pause
goto home

Я немного отредактировал код и теперь получаю:

H

эль

LLO

ло

о

Если я введу Hello.

Я ожидаю Пример: я набираю «Привет», он должен сказать

H

е

л

* +1025 * л

о

1 Ответ

2 голосов
/ 22 февраля 2012

Простите. Ниже моя собственная версия того, чего я думаю вы хотите достичь. Я прошу прощения, если вы не заинтересованы в моей программе (просто игнорируйте ее в этом случае) ...

@echo off
setlocal EnableDelayedExpansion
:home
set /p o=""
set v=0
:pl
   set /a v+=1
   set var%v%=%o:~0,1%
   set o=%o:~1%
if defined o goto pl
for /L %%v in (1,1,%v%) do echo.!var%%v!
pause
goto home
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...