<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>IPCONFIG on qwerty.work</title>
        <link>https://qwerty.work/tags/ipconfig/</link>
        <description>Recent content in IPCONFIG on qwerty.work</description>
        <generator>Hugo -- gohugo.io</generator>
        <language>ja-JP</language>
        <lastBuildDate>Tue, 07 Aug 2018 21:33:24 +0900</lastBuildDate><atom:link href="https://qwerty.work/tags/ipconfig/index.xml" rel="self" type="application/rss+xml" /><item>
            <title>IPCONFIGで取得したIPアドレスを変数に入れて判別するバッチファイルを作る方法</title>
            <link>https://qwerty.work/post/2018/08/ipconfig-get-ipaddress-batchfile/</link>
            <pubDate>Tue, 07 Aug 2018 21:33:24 +0900</pubDate>
            <guid>https://qwerty.work/post/2018/08/ipconfig-get-ipaddress-batchfile/</guid>
            <description>&lt;p&gt;コマンドプロンプトでIPCONFIGを実行して表示されるIPアドレスの情報を変数に入れるバッチファイルのメモ。&lt;/p&gt;&#xA;&lt;h3 id=&#34;ネットワークの系統別に命令を分けたい&#34;&gt;ネットワークの系統別に命令を分けたい&#xA;&lt;/h3&gt;&lt;p&gt;ネットワークの系統別に別けて命令を実行するバッチファイルが必要になったのでチャレンジしてみました。&lt;/p&gt;&#xA;&lt;h3 id=&#34;まずはipconfigで表示される値を確認&#34;&gt;まずはIPCONFIGで表示される値を確認&#xA;&lt;/h3&gt;&lt;p&gt;コマンドプロンプトで &lt;strong&gt;ipconfig&lt;/strong&gt; と打って Enter を押すと以下の結果が表示されます。&lt;strong&gt;IPCONFIG&lt;/strong&gt;は現在使用中のIPアドレスを表示するコマンドですが、この11行目に表示されているIPアドレスを変数に入れ、IF文で命令を分岐させたいのです。画面は Windows 10 で実行したときの画面です。&lt;/p&gt;&#xA;&lt;p&gt;&lt;img class=&#34;gallery-image&#34; data-flex-basis=&#34;367px&#34; data-flex-grow=&#34;153&#34; height=&#34;482&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://qwerty.work/post/2018/08/ipconfig-get-ipaddress-batchfile/images/No-00.jpg&#34; width=&#34;739&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;バッチファイル&#34;&gt;バッチファイル&#xA;&lt;/h3&gt;&lt;p&gt;以下のソースで &lt;strong&gt;IPCONFIG&lt;/strong&gt; で表示される「IPv4アドレス」の欄にある値を変数に入れて処理することができました。&lt;strong&gt;Windows 10では11行目&lt;/strong&gt;で表示されましたが、&lt;strong&gt;Windows 7では行数が異なった&lt;/strong&gt;ので、OSや環境によって取得したい値の行が何行目にあるのか注意が必要です。&lt;/p&gt;&#xA;&lt;p&gt;&lt;img class=&#34;gallery-image&#34; data-flex-basis=&#34;548px&#34; data-flex-grow=&#34;228&#34; height=&#34;350&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://qwerty.work/post/2018/08/ipconfig-get-ipaddress-batchfile/images/No-01.jpg&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-bat&#34; data-lang=&#34;bat&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;@&lt;span style=&#34;color:#66d9ef&#34;&gt;echo&lt;/span&gt; off&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; &#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;for&lt;/span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;/f&lt;/span&gt; &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;tokens=1,2* usebackq delims=^:&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#ae81ff&#34;&gt;%%&lt;/span&gt;i &lt;span style=&#34;color:#66d9ef&#34;&gt;in&lt;/span&gt; (&lt;span style=&#34;color:#e6db74&#34;&gt;`ipconfig ^| findstr /n /r &amp;#34;.&amp;#34; ^| findstr /r &amp;#34;^11:&amp;#34;`&lt;/span&gt;) &lt;span style=&#34;color:#66d9ef&#34;&gt;DO&lt;/span&gt; @&lt;span style=&#34;color:#66d9ef&#34;&gt;set&lt;/span&gt; IP=&lt;span style=&#34;color:#ae81ff&#34;&gt;%%&lt;/span&gt;k&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;rem 取得したIPアドレス前後のスペースを削除&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;call&lt;/span&gt; :Trim %IP%&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;rem 192.168.から始まるIPアドレスか判別&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;echo&lt;/span&gt;.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;echo&lt;/span&gt; %IP% | findstr /B 192.168. &amp;gt; nul&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;if&lt;/span&gt; %ERRORLEVEL% &lt;span style=&#34;color:#f92672&#34;&gt;equ&lt;/span&gt; 0 (&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#x9;&lt;span style=&#34;color:#66d9ef&#34;&gt;echo&lt;/span&gt; IPアドレスは%IP%です。&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;) &lt;span style=&#34;color:#66d9ef&#34;&gt;else&lt;/span&gt; (&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#x9;&lt;span style=&#34;color:#66d9ef&#34;&gt;echo&lt;/span&gt; 192.168.から始まるIPアドレスではありません。&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;echo&lt;/span&gt;.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; &#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;pause&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; &#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;:Trim&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;set&lt;/span&gt; IP=%*&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id=&#34;実行してみた結果&#34;&gt;実行してみた結果&#xA;&lt;/h3&gt;&lt;p&gt;ちゃんとIF文で分岐でき、変数に格納されたIPアドレスが表示できました。&lt;/p&gt;&#xA;&lt;p&gt;&lt;img class=&#34;gallery-image&#34; data-flex-basis=&#34;1081px&#34; data-flex-grow=&#34;450&#34; height=&#34;164&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://qwerty.work/post/2018/08/ipconfig-get-ipaddress-batchfile/images/No-02.jpg&#34; width=&#34;739&#34;&gt;&lt;/p&gt;&#xA;&lt;h4 id=&#34;以下のような取得方法も&#34;&gt;以下のような取得方法も&#xA;&lt;/h4&gt;&lt;p&gt;取得したいIPアドレスの値がどの行にあるかOSによって異なるので、タイトルを指定して取得したい場合は以下の書き方でも取得できます。&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-bat&#34; data-lang=&#34;bat&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;for&lt;/span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;/f&lt;/span&gt; &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;tokens=1,2* usebackq delims=^:&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#ae81ff&#34;&gt;%%&lt;/span&gt;i &lt;span style=&#34;color:#66d9ef&#34;&gt;in&lt;/span&gt; (&lt;span style=&#34;color:#e6db74&#34;&gt;`ipconfig ^| findstr /n /r &amp;#34;.&amp;#34; ^| findstr /r &amp;#34;IPv4 アドレス&amp;#34;`&lt;/span&gt;) &lt;span style=&#34;color:#66d9ef&#34;&gt;DO&lt;/span&gt; @&lt;span style=&#34;color:#66d9ef&#34;&gt;set&lt;/span&gt; IP=&lt;span style=&#34;color:#ae81ff&#34;&gt;%%&lt;/span&gt;k&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;ただし、有線LANや無線LANとか仮想LANとかネットワークアダプタが複数あるPCの場合、一番最後のNICのアドレスを取得してしまいます。最初のNICのアドレスを指定して取得できる方法があるとは思いますが、また別の機会にチャレンジしてみたいと思います。&lt;/p&gt;&#xA;&lt;h3 id=&#34;netshコマンドを使った参考ページ&#34;&gt;NETSHコマンドを使った参考ページ&#xA;&lt;/h3&gt;&lt;p&gt;以下のページではNETSHコマンドで取得したIPアドレスを変数に入れる方法を掲載しています。&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://qwerty.work/blog/2018/08/netsh-get-ipaddress-batchfile.php&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;NETSHコマンドで取得したIPアドレスを変数に入れて判別するバッチファイルを作る方法&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;</description>
        </item></channel>
</rss>
