Хм, а как потом разбирать будете, если цифр <12?
Ахаха, и верно! Первые два октета известны заранее, и я в горячке априори принял, что можно будет отчленить и оставшиеся два. Ошибка. Задача переходит в разряд теоретических.
@echo off
for /f "tokens=2 delims=:" %%a in ('ipconfig ^|findstr /c:IP-') do (
set ip=%%a
call echo %%ip:.=%% >>ipaddr.txt
)
Не могли бы вы пояснить этот пример? Зачем set и почему call и откуда четвёртый знак процента?
P.S. По ходу пьесы возник вопрос ещё одного, дополнительного преобразования адреса: отсечь, например, первые пять символов. Подскажите, пожалуйста, можно ли его реализовать в рамках вышеописанного цикла? Вариант с еще одним циклом, обрабатывающим файл, получившийся на выходе предыдущего, очевидно громоздок.
P.P.S Вкратце опишу идею, на всякий случай. Нужно периодически выкладывать на общедоступный фтп-сервер слегка замаскированный результат команды ipconfig, т.к. адрес часто меняется и неплохо бы иметь представление о том, каков он в данный момент. Самый простой способ, конечно, это пихать вывод ipconfig в запароленный архив или в фтп-папку с ограниченным доступом, но я вот что-то решил так попробовать, надеюсь с вашей помощью получится. В идеале мне нужен адрес без первых семи символов (два октета (2+3) и две точки, итого 7) и с дефисом в виде разделителя. Например, 15-252.