バッチファイルからネットワーク操作を自動化する方法を解説します。ping・ipconfig・netstat・net use の使い方と、実務での活用例を紹介します。
pingコマンド:疎通確認を自動化する
@echo off
rem 基本的なpingによる疎通確認
ping 8.8.8.8
rem -n 1 で1回だけpingを送る(デフォルトは4回)
ping -n 1 8.8.8.8
rem 出力を捨てて終了コードだけ確認
ping -n 1 8.8.8.8 >nul 2>&1
if %errorlevel% equ 0 (
echo 8.8.8.8に到達できます
) else (
echo 8.8.8.8に到達できません
)
rem 複数のサーバーをチェック
for %%s in (192.168.1.1 192.168.1.2 192.168.1.3) do (
ping -n 1 %%s >nul 2>&1
if %errorlevel% equ 0 (
echo [OK] %%s
) else (
echo [NG] %%s
)
)ipconfigコマンド:IPアドレスを取得する
@echo off
rem IPアドレスの確認
ipconfig
rem DNSキャッシュのクリア(管理者権限が必要)
ipconfig /flushdns
rem DHCPアドレスの更新(管理者権限が必要)
rem ipconfig /release && ipconfig /renew
rem for /f でIPアドレスを変数に取得
for /f "tokens=2 delims=:" %%a in ('ipconfig ^| findstr /i "IPv4"') do (
set IP=%%a
rem 先頭のスペースを除去
set IP=%IP: =%
)
echo このPCのIPアドレス: %IP%netstatコマンド:接続状態とポートを確認する
@echo off
rem 全接続を表示
netstat -an
rem ESTABLISHED(確立済み接続)のみ表示
netstat -an | findstr "ESTABLISHED"
rem LISTENINGポートのみ表示(サーバーが待ち受けているポート)
netstat -an | findstr "LISTENING"
rem プロセスIDも表示(-o)
netstat -ano
rem 特定ポートを使っているプロセスを調べる(80番ポート)
netstat -ano | findstr ":80 "net useコマンド:ネットワークドライブを接続する
@echo off
rem ネットワークドライブをZドライブとして接続
net use Z: \\fileserver\share /persistent:no
if %errorlevel% equ 0 (
echo Zドライブの接続に成功しました
) else (
echo 接続に失敗しました
exit /b 1
)
rem 現在の接続一覧を表示
net use
rem Zドライブを切断
net use Z: /delete
rem ログイン情報付きで接続
net use Z: \\fileserver\share /user:DOMAIN\Username passwordまとめ
- ping -n 1 でerrorlevelを確認して疎通チェックを自動化できる
- ipconfigとfor /fを組み合わせてIPアドレスを変数に取得できる
- netstat -an | findstr で特定の接続状態やポートを絞り込める
- net useでネットワークドライブの接続・切断を自動化できる



コメント