Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Новый участник


Сообщения: 26
Благодарности: 1

Профиль | Отправить PM | Цитировать


Iska, благодарю, я так пытался, но SETLOCAL установлено было не в начале скрипта, а перед входом в :loop_len
кому интересно. вот даю тестовый текст кода от начала и до конца:

@ECHO off
@COLOR 3
@CHCP 866
SETLOCAL ENABLEEXTENSIONS ENABLEDELAYEDEXPANSION
CLS
SET pc=%COMPUTERNAME% && SET path=C:\%COMPUTERNAME%
ECHO "Имя ПК = %pc%" && ECHO "Путь к тестовой папке = %path%"
ECHO "Посчитаем число символов в пути к тестовой папке"
PAUSE
SET /A counter=0
:loop_len
IF NOT "%path%"=="" (
SET path=%path:~1%
SET /A counter=%counter%+1
GOTO loop_len
)
SET path=C:\%COMPUTERNAME%
ECHO Счетчик = %counter%
ECHO "Выведем список файлов в директории %path%"
PAUSE
FOR /F "TOKENS=*" %%i IN ('DIR /B /S "%path%"') DO (
SET result=%%i
ECHO !result:~%counter%!
)
PAUSE

Результат: "result" выводится с 1 "лишним символом" слева так что есть резон "отрезать" на 1 символ больше

Отправлено: 11:18, 25-07-2013 | #4