<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Серый форум &mdash; CMD/BAT: выделить из вывода команды ipconfig только адрес, без точек]]></title>
		<link>https://forum.script-coding.com/viewtopic.php?id=5346</link>
		<atom:link href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=5346&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «CMD/BAT: выделить из вывода команды ipconfig только адрес, без точек».]]></description>
		<lastBuildDate>Sun, 09 Jan 2011 07:23:38 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: CMD/BAT: выделить из вывода команды ipconfig только адрес, без точек]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=43449#p43449</link>
			<description><![CDATA[<p>Спасибо!</p>]]></description>
			<author><![CDATA[null@example.com (fsc_psd)]]></author>
			<pubDate>Sun, 09 Jan 2011 07:23:38 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=43449#p43449</guid>
		</item>
		<item>
			<title><![CDATA[Re: CMD/BAT: выделить из вывода команды ipconfig только адрес, без точек]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=43397#p43397</link>
			<description><![CDATA[<p><em>&gt; Зачем set</em><br />конструкция %var:.=% не работает с переменными вида %%х<br /><em>&gt; почему call</em><br />было лень писать 2(3?) строчки<br /></p><div class="codebox"><pre><code>setlocal enabledelayedexpansion
echo !ip:.=!</code></pre></div><p><em>&gt; откуда четвёртый знак процента?</em><br />четвёртый и второй нужны для call<br /><em>&gt; P.P.S</em><br /></p><div class="codebox"><pre><code>@echo off
for /f &quot;tokens=2 delims=:&quot; %%a in (&#039;ipconfig ^|findstr /c:IP-&#039;) do (
for /f &quot;tokens=3* delims=.&quot; %%b in (&quot;%%a&quot;) do echo %%b-%%c &gt;&gt;ipaddr.txt
)</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (!k)]]></author>
			<pubDate>Sat, 08 Jan 2011 09:15:35 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=43397#p43397</guid>
		</item>
		<item>
			<title><![CDATA[Re: CMD/BAT: выделить из вывода команды ipconfig только адрес, без точек]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=43392#p43392</link>
			<description><![CDATA[<div class="quotebox"><blockquote><p>Хм, а как потом разбирать будете, если цифр &lt;12?</p></blockquote></div><p>Ахаха, и верно! Первые два октета известны заранее, и я в горячке априори принял, что можно будет отчленить и оставшиеся два. Ошибка.&nbsp; Задача переходит в разряд теоретических.</p><div class="codebox"><pre><code>@echo off
for /f &quot;tokens=2 delims=:&quot; %%a in (&#039;ipconfig ^|findstr /c:IP-&#039;) do (
set ip=%%a
call echo %%ip:.=%% &gt;&gt;ipaddr.txt
)</code></pre></div><p>Не могли бы вы пояснить этот пример? Зачем set и почему call и откуда четвёртый знак процента?</p><p>P.S. По ходу пьесы возник вопрос ещё одного, дополнительного преобразования адреса: отсечь, например, первые пять символов. Подскажите, пожалуйста, можно ли его реализовать в рамках вышеописанного цикла? Вариант с еще одним циклом, обрабатывающим файл, получившийся на выходе предыдущего, очевидно громоздок.</p><p>P.P.S Вкратце опишу идею, на всякий случай. Нужно периодически выкладывать на общедоступный фтп-сервер слегка замаскированный результат команды ipconfig, т.к. адрес часто меняется и неплохо бы иметь представление о том, каков он в данный момент. Самый простой способ, конечно, это пихать вывод ipconfig в запароленный архив или в фтп-папку с ограниченным доступом, но я вот что-то решил так попробовать, надеюсь с вашей помощью получится. В идеале мне нужен адрес без первых семи символов (два октета (2+3) и две точки, итого 7) и с дефисом в виде разделителя. Например, 15-252.</p>]]></description>
			<author><![CDATA[null@example.com (fsc_psd)]]></author>
			<pubDate>Sat, 08 Jan 2011 04:29:28 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=43392#p43392</guid>
		</item>
		<item>
			<title><![CDATA[Re: CMD/BAT: выделить из вывода команды ipconfig только адрес, без точек]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=43379#p43379</link>
			<description><![CDATA[<div class="quotebox"><cite>fsc_psd пишет:</cite><blockquote><p>только ip-адрес, причём без точек.</p></blockquote></div><p>Хм, а как потом разбирать будете, если цифр &lt;12?<br /></p><div class="codebox"><pre><code>@echo off
for /f &quot;tokens=2 delims=:&quot; %%a in (&#039;ipconfig ^|findstr /c:IP-&#039;) do (
set ip=%%a
call echo %%ip:.=%% &gt;&gt;ipaddr.txt
)</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (!k)]]></author>
			<pubDate>Fri, 07 Jan 2011 16:32:18 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=43379#p43379</guid>
		</item>
		<item>
			<title><![CDATA[CMD/BAT: выделить из вывода команды ipconfig только адрес, без точек]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=43373#p43373</link>
			<description><![CDATA[<p>Здравствуйте!<br />Необходимо выделить из вывода команды ipconfig только ip-адрес, причём без точек.</p><p>С первой частью справился так:<br /></p><div class="codebox"><pre><code>for /f &quot;skip=37 tokens=14&quot; %%a in (&#039;ipconfig&#039;) do
(
    echo %%a &gt;&gt; ipaddr.txt
)
exit /b</code></pre></div><p>Точки думал убрать расширенной подстановкой переменных:<br /></p><div class="codebox"><pre><code>echo %%a:.=% &gt;&gt; ipaddr.txt</code></pre></div><p>Но внутри цикла расширенная подстановка работать отказывается.</p><p>Соответственно, два вопроса:<br />-решается ли задача моим способом, и если решается, то где я ошибся?<br />-как можно решить по-другому?</p>]]></description>
			<author><![CDATA[null@example.com (fsc_psd)]]></author>
			<pubDate>Fri, 07 Jan 2011 09:49:11 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=43373#p43373</guid>
		</item>
	</channel>
</rss>
