CMD/BAT - Как из for получить значение из одной строки смещаясь на 1 при каждом проходе

Аватара пользователя
Voodooman

Re: CMD/BAT - Как из for получить значение из одной строки смещаясь на 1 при каждом проходе

Сообщение Voodooman »

Цитата Foreigner:



Да что-то как-то так пошло, чистые батники и так с текстом работают "не слишком", а тут еще придется заботится о "!". Правда это не отменяет "%". Есть конечно универсальные решения, но это усложняет код. Имхо
CMD/BAT - Как из for получить значение из одной строки смещаясь на 1 при каждом проходе




Foreigner, спасибо, ясно.




Цитата Voodooman:



Дело в том что ваши методы джама из for во вне мне не подходят, так как у меня 3 фложенных for
CMD/BAT - Как из for получить значение из одной строки смещаясь на 1 при каждом проходе




Voodooman, а может тогда стоит перейти на WSH?
Аватара пользователя
Voodooman

Re: CMD/BAT - Как из for получить значение из одной строки смещаясь на 1 при каждом проходе

Сообщение Voodooman »

Не, WSH не стоит, я с ним не знаком и тут мне уже принципиально надо заставить бат файл каким то хитрым способом прочить только одну строчку!)) Я не успокоюсь пока не заставлю его это сделать)))



Решил поискать внешние консольные утилиты для упрощения задачи и поставки их в комплекте вместе с готовым батником, наткнулся на эту утилиту для чтения, изменения и удаления параметров из ини файлов через батники
http://www.horstmuc.de/wbat32.htm#inifile




Сейчас попытаюсь еще найти более широкопрофильную утилиту, которая может читать заданную строчку в любую сторону, помню мне однажды попадалась такой монстр, который через командную строку умел делать все, найти бы его сейчас и не извращаться со встроенным ограниченным функционалом)



Но все же нейтив метод предпочительней, я пока от мук избавляю себя этой прогой, но хочу все равно узнать как выйти из фора внутри фора после 1 прохода по заданной строчке и при этом не выходить из верхнего. Должен же быть способ.



Кстати, я забыл, как мне из полученной строки взять и использовать в качестве переменной последние 44 символа без всяких делиметеров и токенов? какие там операторы нужно использовать?
Аватара пользователя
kiripanda

Re: CMD/BAT - Как из for получить значение из одной строки смещаясь на 1 при каждом проходе

Сообщение kiripanda »

Цитата Foreigner:



Просто я по возможности избегаю enabledelayedexpansion при echo-выводе текста.
CMD/BAT - Как из for получить значение из одной строки смещаясь на 1 при каждом проходе






Код:

Код: Выделить всё

for /l %%j in (1,1,%cnt%) do call echo %%names_%%j%%=%%id_%%j%%
Аватара пользователя
Foreigner

Re: CMD/BAT - Как из for получить значение из одной строки смещаясь на 1 при каждом проходе

Сообщение Foreigner »

А кто нибудь на мои вопросы здесь ответит?))

еще раз спрошу - как взять значение из указанной строчки и прервать лишь 1 фор после этого чтобы избежать парсинга отсальных строк?
Аватара пользователя
Voodooman

Re: CMD/BAT - Как из for получить значение из одной строки смещаясь на 1 при каждом проходе

Сообщение Voodooman »

Цитата Voodooman:



Не, WSH не стоит,
CMD/BAT - Как из for получить значение из одной строки смещаясь на 1 при каждом проходе




Это как?



«%systemroot%\system32\wscript.exe» наличествует?


Цитата Voodooman:



я с ним не знаком и тут мне уже принципиально надо заставить бат файл каким то хитрым способом прочить только одну строчку!)) Я не успокоюсь пока не заставлю его это сделать)))
CMD/BAT - Как из for получить значение из одной строки смещаясь на 1 при каждом проходе




Спасибо, Ваша цель понятна.




Цитата Voodooman:



А кто нибудь на мои вопросы здесь ответит?))
CMD/BAT - Как из for получить значение из одной строки смещаясь на 1 при каждом проходе




Я даже не понял вопрос:


Цитата Voodooman:



как взять значение из указанной строчки и прервать лишь 1 фор после этого чтобы избежать парсинга отсальных строк?
CMD/BAT - Как из for получить значение из одной строки смещаясь на 1 при каждом проходе
Аватара пользователя
Voodooman

Re: CMD/BAT - Как из for получить значение из одной строки смещаясь на 1 при каждом проходе

Сообщение Voodooman »

Цитата Voodooman:



давай ты не будешь играть в дурака?

CMD/BAT - Как из for получить значение из одной строки смещаясь на 1 при каждом проходе




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




читать дальше »


По поводу Ваших прочих многих слов, не относящихся к сути вопроса, равно тона, коим они высказаны… Не получается у Вас сарказм.



Что ж, продолжайте дискуссию в том же духе — и обрящите. Я же — учту на будущее.
Аватара пользователя
Foreigner

Re: CMD/BAT - Как из for получить значение из одной строки смещаясь на 1 при каждом проходе

Сообщение Foreigner »

Voodooman,

Штатными средствами, без счетчиков и не зная содержимое строки, этого сделать нельзя. Для парсинга текста написано много утилит -- sed, awk, grep, gsar и т.д.
Ответить

Вернуться в «Скриптовые языки администрирования Windows»