Новый участник
Сообщения: 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
|