<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Серый форум &mdash; CMD/BAT: Как сделать, чтобы скрипт игнорировал не нужные ответы Ping]]></title>
	<link rel="self" href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=7517&amp;type=atom" />
	<updated>2012-09-02T21:28:42Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.script-coding.com/viewtopic.php?id=7517</id>
		<entry>
			<title type="html"><![CDATA[Re: CMD/BAT: Как сделать, чтобы скрипт игнорировал не нужные ответы Ping]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=63463#p63463" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>root2 пишет:</cite><blockquote><p>что бы проверка была &lt;...&gt; по кодам EROORLEVEL</p></blockquote></div><p>Проверьте возвращаемые коды ответов команды PING.EXE в разных случаях. Скорее всего вы не сможете отличить варианты &quot;хост недоступен&quot; и &quot;сеть недоступна&quot;.</p>]]></content>
			<author>
				<name><![CDATA[Rumata]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=24846</uri>
			</author>
			<updated>2012-09-02T21:28:42Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=63463#p63463</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CMD/BAT: Как сделать, чтобы скрипт игнорировал не нужные ответы Ping]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=63457#p63457" />
			<content type="html"><![CDATA[<p>Просто ведь если например я этот скрипт захочу в англ версии винды запустить мне же ведь каждый раз придётся менять значение find на англ.</p>]]></content>
			<author>
				<name><![CDATA[root2]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=28588</uri>
			</author>
			<updated>2012-09-02T18:12:44Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=63457#p63457</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CMD/BAT: Как сделать, чтобы скрипт игнорировал не нужные ответы Ping]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=63456#p63456" />
			<content type="html"><![CDATA[<p><strong>Rumata</strong>,</p><p>А можно ли сделать что бы проверка была не по словам которые проверяет find а например по кодам EROORLEVEL</p><div class="codebox"><pre><code>:TestMsgInt

setlocal enabledelayedexpansion
 
for /f %%t in (&#039;ping 87.250.250.3 -n 2 -w 500&#039;) do (
    echo.&quot;%%t&quot; | find &quot;Ответ&quot;&gt;nul &amp;&amp; (
    echo WScript.Echo &quot;&amp;#9562;эЄхЁэхЄ ЁрсюЄрхЄ.&quot; &gt;&quot;%WinDir%\temp\msgint.vbs&quot; &amp;&amp; start /B &quot;&quot; &quot;%WinDir%\temp\msgint.vbs&quot;
        exit /b 1
    )
    echo.&quot;%%t&quot; | find &quot;Превышен&quot;&gt;nul &amp;&amp; (
    echo WScript.Echo &quot;&amp;#9562;эЄхЁэхЄ эх ЁрсюЄрхЄ.&quot; &gt;&quot;%WinDir%\temp\msgint.vbs&quot; &amp;&amp; start /B &quot;&quot; &quot;%WinDir%\temp\msgint.vbs&quot;
        exit /b 1
    )
    echo.&quot;%%t&quot; | find &quot;Заданный&quot;&gt;nul &amp;&amp; (
    EndLocal
    GoTo :TestMsgInt
    )
    echo.&quot;%%t&quot; | find &quot;При&quot;&gt;nul &amp;&amp; (
    EndLocal
    GoTo :TestMsgInt
    )
)</code></pre></div>]]></content>
			<author>
				<name><![CDATA[root2]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=28588</uri>
			</author>
			<updated>2012-09-02T18:10:21Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=63456#p63456</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CMD/BAT: Как сделать, чтобы скрипт игнорировал не нужные ответы Ping]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=63454#p63454" />
			<content type="html"><![CDATA[<p>Спасибо всем кто участвовал в решении моей проблемы.</p>]]></content>
			<author>
				<name><![CDATA[root2]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=28588</uri>
			</author>
			<updated>2012-09-02T14:13:59Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=63454#p63454</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CMD/BAT: Как сделать, чтобы скрипт игнорировал не нужные ответы Ping]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=63453#p63453" />
			<content type="html"><![CDATA[<p>в общем на этом я остановился.</p><div class="codebox"><pre><code>:: Проверка интернета, с защитой от ложных срабатываний.
:sendmsg

setlocal enabledelayedexpansion
 
for /f &quot;tokens=*&quot; %%t in (&#039;ping %CheckInetIpAddr% -n 2 -w 500&#039;) do (
    echo.&quot;%%t&quot; | find &quot;Ответ&quot;&gt;nul &amp;&amp; (
    echo WScript.Echo &quot;&amp;#9562;эЄхЁэхЄ ЁрсюЄрхЄ.&quot; &gt;&quot;%WinDir%\temp\msgint.vbs&quot; &amp;&amp; start /B &quot;&quot; &quot;%WinDir%\temp\msgint.vbs&quot;
        exit /b 1
    )
    echo.&quot;%%t&quot; | find &quot;Превышен&quot;&gt;nul &amp;&amp; (
    echo WScript.Echo &quot;&amp;#9562;эЄхЁэхЄ эх ЁрсюЄрхЄ.&quot; &gt;&quot;%WinDir%\temp\msgint.vbs&quot; &amp;&amp; start /B &quot;&quot; &quot;%WinDir%\temp\msgint.vbs&quot;
        exit /b 1
    )
)

EndLocal
GoTo :sendmsg</code></pre></div>]]></content>
			<author>
				<name><![CDATA[root2]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=28588</uri>
			</author>
			<updated>2012-09-02T14:12:32Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=63453#p63453</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CMD/BAT: Как сделать, чтобы скрипт игнорировал не нужные ответы Ping]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=63452#p63452" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>root2 пишет:</cite><blockquote><p>В общем вот что у меня получилось, работает как надо.</p><p>Rumata - просто разобрался в вашем скрипте, когда и какие сообщения он выдаёт.</p><p>Вывод, теперь если выкл адаптер он будет всё время проверять пока не будет активных сообщений, когда адаптер вкл. тогда он сразуже проверит наличие интернета и выдаст ответ либо есть, либо нету</p><p>ну и вот он</p><div class="codebox"><pre><code>:: Проверка интернета, с защитой от ложных срабатываний.

:back

setlocal enabledelayedexpansion
 
set checkip_msg_1=Превышен интервал
set checkip_msg_2=Ответ от
 
set checkip_ip=192.168.0.1
if not defined checkip_ip (
    echo.Usage: %~n0 IP [timeout]
    goto :EOF
)
 
for /f &quot;tokens=*&quot; %%t in (
    &#039;ping %checkip_ip% -n 1 -w 400&#039;
) do (

    echo.&quot;%%t&quot; | find &quot;%checkip_msg_1%&quot;&gt;nul &amp;&amp; (
        msg * Интернета нету
        exit /b 1
    )
    echo.&quot;%%t&quot; | find &quot;%checkip_msg_2%&quot;&gt;nul &amp;&amp; (
        msg * Интернет есть
        exit /b 1
    )
)

GoTo :back</code></pre></div></blockquote></div><p>лишнее.</p><div class="codebox"><pre><code>if not defined checkip_ip (
    echo.Usage: %~n0 IP [timeout]
    goto :EOF</code></pre></div>]]></content>
			<author>
				<name><![CDATA[root2]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=28588</uri>
			</author>
			<updated>2012-09-02T13:50:19Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=63452#p63452</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CMD/BAT: Как сделать, чтобы скрипт игнорировал не нужные ответы Ping]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=63451#p63451" />
			<content type="html"><![CDATA[<p>Rumata, спасибо вам огромное...</p><br /><br /><div class="quotebox"><cite>root2 пишет:</cite><blockquote><p>теперь если у кого есть предложения по упрощению и оптимизации скрипта, что-бы было поменьше строк ну и выполнял что-бы всё так-же</p></blockquote></div>]]></content>
			<author>
				<name><![CDATA[root2]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=28588</uri>
			</author>
			<updated>2012-09-02T13:45:54Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=63451#p63451</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CMD/BAT: Как сделать, чтобы скрипт игнорировал не нужные ответы Ping]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=63450#p63450" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>Rumata пишет:</cite><blockquote><div class="quotebox"><cite>root2 пишет:</cite><blockquote><p>ещё пишет что timeout не является командой</p></blockquote></div><p>Видимо Вы работаете на WinXP. Там такой команды действительно нет.</p></blockquote></div><p>вы правы</p>]]></content>
			<author>
				<name><![CDATA[root2]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=28588</uri>
			</author>
			<updated>2012-09-02T13:44:21Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=63450#p63450</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CMD/BAT: Как сделать, чтобы скрипт игнорировал не нужные ответы Ping]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=63449#p63449" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>Rumata пишет:</cite><blockquote><div class="quotebox"><cite>root2 пишет:</cite><blockquote><p>:back setlocal enabledelayedexpansion</p></blockquote></div><p>поменяйте местами эти строки<br /></p><div class="codebox"><pre><code>:back

setlocal enabledelayedexpansion</code></pre></div></blockquote></div><p>я бы с радостью да вот только правильно выполняться он не будет... т.к вызывается он от команды... а эта команда переходит на метку <br />:back<br />а всё что выше просто не прочитает.</p>]]></content>
			<author>
				<name><![CDATA[root2]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=28588</uri>
			</author>
			<updated>2012-09-02T13:40:55Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=63449#p63449</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CMD/BAT: Как сделать, чтобы скрипт игнорировал не нужные ответы Ping]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=63448#p63448" />
			<content type="html"><![CDATA[<p>теперь если у кого есть предложения по упрощению и оптимизации скрипта, что-бы было поменьше строк ну и выполнял что-бы всё так-же</p>]]></content>
			<author>
				<name><![CDATA[root2]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=28588</uri>
			</author>
			<updated>2012-09-02T13:38:14Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=63448#p63448</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CMD/BAT: Как сделать, чтобы скрипт игнорировал не нужные ответы Ping]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=63447#p63447" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>root2 пишет:</cite><blockquote><p>ещё пишет что timeout не является командой</p></blockquote></div><p>Видимо Вы работаете на WinXP. Там такой команды действительно нет.</p>]]></content>
			<author>
				<name><![CDATA[Rumata]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=24846</uri>
			</author>
			<updated>2012-09-02T13:36:55Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=63447#p63447</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CMD/BAT: Как сделать, чтобы скрипт игнорировал не нужные ответы Ping]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=63446#p63446" />
			<content type="html"><![CDATA[<p>так ну и с этим разобрался, нужно просто перед GoTo :back вставить EndLocal</p>]]></content>
			<author>
				<name><![CDATA[root2]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=28588</uri>
			</author>
			<updated>2012-09-02T13:36:06Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=63446#p63446</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CMD/BAT: Как сделать, чтобы скрипт игнорировал не нужные ответы Ping]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=63445#p63445" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>root2 пишет:</cite><blockquote><p>:back setlocal enabledelayedexpansion</p></blockquote></div><p>поменяйте местами эти строки<br /></p><div class="codebox"><pre><code>:back

setlocal enabledelayedexpansion</code></pre></div>]]></content>
			<author>
				<name><![CDATA[Rumata]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=24846</uri>
			</author>
			<updated>2012-09-02T13:34:52Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=63445#p63445</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CMD/BAT: Как сделать, чтобы скрипт игнорировал не нужные ответы Ping]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=63444#p63444" />
			<content type="html"><![CDATA[<p>рано я обрадовался, теперь такая беда, и всю консоль мне загадило этим сообщением</p><p>Достигнут уровень рекурсии, максимально возможный для команды SETLOCAL.<br />Достигнут уровень рекурсии, максимально возможный для команды SETLOCAL.<br />Достигнут уровень рекурсии, максимально возможный для команды SETLOCAL.<br />Достигнут уровень рекурсии, максимально возможный для команды SETLOCAL.<br />Достигнут уровень рекурсии, максимально возможный для команды SETLOCAL.<br />Достигнут уровень рекурсии, максимально возможный для команды SETLOCAL.<br />Достигнут уровень рекурсии, максимально возможный для команды SETLOCAL.<br />Достигнут уровень рекурсии, максимально возможный для команды SETLOCAL.</p>]]></content>
			<author>
				<name><![CDATA[root2]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=28588</uri>
			</author>
			<updated>2012-09-02T13:32:56Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=63444#p63444</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CMD/BAT: Как сделать, чтобы скрипт игнорировал не нужные ответы Ping]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=63443#p63443" />
			<content type="html"><![CDATA[<p>В общем вот что у меня получилось, работает как надо.</p><p>Rumata - просто разобрался в вашем скрипте, когда и какие сообщения он выдаёт.</p><p>Вывод, теперь если выкл адаптер он будет всё время проверять пока не будет активных сообщений, когда адаптер вкл. тогда он сразуже проверит наличие интернета и выдаст ответ либо есть, либо нету</p><p>ну и вот он</p><div class="codebox"><pre><code>:: Проверка интернета, с защитой от ложных срабатываний.

:back

setlocal enabledelayedexpansion
 
set checkip_msg_1=Превышен интервал
set checkip_msg_2=Ответ от
 
set checkip_ip=192.168.0.1
if not defined checkip_ip (
    echo.Usage: %~n0 IP [timeout]
    goto :EOF
)
 
for /f &quot;tokens=*&quot; %%t in (
    &#039;ping %checkip_ip% -n 1 -w 400&#039;
) do (

    echo.&quot;%%t&quot; | find &quot;%checkip_msg_1%&quot;&gt;nul &amp;&amp; (
        msg * Интернета нету
        exit /b 1
    )
    echo.&quot;%%t&quot; | find &quot;%checkip_msg_2%&quot;&gt;nul &amp;&amp; (
        msg * Интернет есть
        exit /b 1
    )
)

GoTo :back</code></pre></div>]]></content>
			<author>
				<name><![CDATA[root2]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=28588</uri>
			</author>
			<updated>2012-09-02T13:25:27Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=63443#p63443</id>
		</entry>
</feed>
