自身のIPv4アドレスを取得するbat
はじめに
自身が所属するネットワークごとにbatが参照するファイルサーバーを変えたいということがあった。
自身にインストーラーをコピーし実行するという内容のbatのため、
ネットワーク負荷の観点から自身が所属するセグメントごとにコピー元サーバーを変えたい。
自身のIPアドレスを取得する方法を色々試した末に以下の形に落ち着いた。
検証環境
・Windows10 64bit Professional 1909
・Windows7 32bit Professional SP1
bat内容
rem ■自身のIPv4アドレスを取得し変数%IP%へ定義
for /f "tokens=1,3,*" %%A in ('ping -4 %computername% -n 1 ^| find "からの応答"') do (
set IP=%%A
)
説明
rem ■自身のIPv4アドレスを取得し変数%IP%へ定義
for /f "tokens=1,3,*" %%A in ('ping -4 %computername% -n 1 ^| find "からの応答"') do (
set IP=%%A
)
①自分自身のホスト名にIPv4指定でpingを実行
②実行結果からIPv4アドレスを抽出し変数%IP%へセット
さいごに
あまりスマートではないかもしれないが、時間がなかったためこの方法で実装しました。
もっとスマートに実現する方法があればどなたか教えてほしいです。。。
Author And Source
この問題について(自身のIPv4アドレスを取得するbat), 我々は、より多くの情報をここで見つけました https://qiita.com/kuwata98/items/3b1b1d15a15d11c91005著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .