今まで業務効率化する時によくbatファイルを作ってはいましたが、コマンドを上から順番に実行していくレベルのbatファイルしか作っていませんでした。そろそろ本気でbatファイルのことを調べて、色々なことが出来るようにしたいなと思っていたところ、Windows PCでWi-Fiに接続・切断を繰り返す動作をさせたいことがあったので、さっそく調べて作ってみました。
作ったbatファイルは以下のようになりました。テキストファイルにコピペして、拡張子をbatにして使ってみてください。
:loop
netsh wlan connect name="wifi-ssid"
timeout /t 60 > nul
netsh wlan disconnect
timeout /t 60 > nul
goto :loop
なるほどなるほど、一番下の6行目のところで、gotoして、一番上の:loopに戻るって感じですね。これならteratermマクロのループ作るのとさほど変わらない感じですね。
Wi-Fiに接続、切断する動作に関しては、netshコマンドで実行してます。ちなみに注意点として、2行目のSSIDを指定してWI-Fiに接続する際には、一度手動で接続したことのあるSSIDのみとなってます。一度も接続したことのないSSIDを指定しても、接続しにいかないのでご注意ください。
timeoutの部分に関して、60秒間batファイルの動きを止めるコマンドです。なので、60秒間毎にWi-Fi接続・切断を繰り返すような内容になってます。自分で任意の時間に調整したい場合は、「60」となっているところを好きな数字に変更して使ってください。
また、最後に「> nul」となっていますが、これを入れておかないと、以下のような感じでキー入力を求められるので、キー入力を求められないようにするために入れてます。
C:\WINDOWS\system32>timeout /t 10
7 秒待っています。続行するには何かキーを押してください …
やっぱり面倒くさがっていつまでも調べないのはダメですね。調べる気になってみたらloopくらいのbatファイル、こんな簡単に作れますし。今後どんどんbatファイルで色々作れるようになりたいと思いました。今後も便利なbatファイル作ったら色々公開していきます。