Показать полную графическую версию : Спец символы в cmd ?
Есть текстовый 1.txt файл типа
111 555 333 444
222 333 666 666
хочу его разбить на строки спец символом переводом каретки и присвоить строки переменным таким примерно скрптом
for /f "delims=/n tokens=1" %%a in (1.txt) do @set string1=%%a
for /f "delims=/n tokens=2" %%a in (1.txt) do @set string2=%%a
но ничего касающего спец символов в cmd я не обнаружил может кто чего посоветует.
присвоить строки переменным »
FOR и без всяких триксов бьёт построчно:
@echo off
setlocal EnableDelayEdexpansion
for /f "delims=" %%a in (1.txt) do set /a $n+=1& set "string!$n!=%%a"
set string&pause>nul
странно а я думал по умолчанию у for в качестве разделителей пробел и таб
у for в качестве разделителей пробел и таб»эти разделители применяются УЖЕ к строке, все штатные средства работают с текстом только построчно
Еще один вопрос а тут в качестве множество можно использовать переменную ?
for {%переменная|%%переменная} in (множество) do команда [ПараметрыКоманднойСтроки]
переменную которая содержит строку 111 555 333 444 чтоб потом значения
этой строки 111 555 333 и 4444 присвоить отдельным переменным
obli, не уверен что точно понял вопрос, но перебрать можно так:
for %%i in (раз два три) do echo %%i
я исправил предыдущий пост чтоб немного поясней было
вроде так я должен получить 2 и 3 параметр из строки 111 555 333 444 которая находится в %string1
for /L "tokens=2" %%a in (!%string1%!) do @set 2=%%a
for /L "tokens=3" %%a in (!%string1%!) do @set 3=%%a
но увы ругается "tokens=2" was unexpected at this time
@echo off
set string1=111 555 333 444
for /f "tokens=2,3" %%a in ("%string1%") do (
set "p2=%%a"
set "p3=%%b"
)
set p2
set p3
pause>nul
да я бы врядли сам бы додумал Агромное мерси так бы ещеб неделю мучился
obli, да прибудет с вами HELP! ))HELP FOR
p2 и p3 локальными получаются а если их в глобальные
PS HELP FOR курит нихрена он мне не помог только головная боль от него .
HELP FOR курит нихрена он мне не помог только головная боль от него »эт вы батенька зря... а p1 и p2 в посте #8 как раз глобальные, так как команда SETLOCAL не использовалась... если вы про подстановку в цикле, то вместо %p1% нужно использовать !p1! (подробно в справке: "HELP SET")
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.