デバイスがラップトップ上のホストされたワイヤレス ホットスポットに接続したことを検出するバッチ ファイル

デバイスがラップトップ上のホストされたワイヤレス ホットスポットに接続したことを検出するバッチ ファイル

私は以下のものを使用してラップトップ上にワイヤレス ホットスポットを作成しました:

netsh wlan start hostednetwork

これは完璧に動作します。

このネットワークに自動的に接続する Raspberry Pi を持っていますが、接続にはかなりランダムな (とはいえ短い) 時間がかかります。Raspberry Pi がホットスポットに接続したことを「検出」するまでバッチ ファイルを一時停止する方法はありますか? それとも、接続を確実にするために 60 秒の一時停止を挿入するだけでよいのでしょうか。これはあまり理想的ではありませんか?

答え1

幸いなことに、さらに調べた結果、解決策を見つけました。

StackOverflow の別のスレッドから... クレジット: paxdiablo

@setlocal enableextensions enabledelayedexpansion
@echo off
set ipaddr=%1
:loop
set state=down
for /f "tokens=5,7" %%a in ('ping -n 1 !ipaddr!') do (
    if "x%%a"=="xReceived" if "x%%b"=="x1," set state=up
)
echo.Link is !state!
ping -n 6 127.0.0.1 >nul: 2>nul:
goto :loop
endlocal

関連情報