無需安裝額外工具,純批次指令即可解析 ipconfig /all 輸出,擷取實體網卡的 MAC 位址與 IPv4 位址。適用於登入腳本、資產掃描、快速診斷網路。
@echo off
setlocal enabledelayedexpansion
title 取得本機 IP 與 MAC 位址
set "Space= "
set "PH_addr=%Space%Physical Address"
set "IP_addr=%Space%IP Address"
for /f "tokens=1,* delims=." %%i in ('ipconfig /all') do (
for %%a in (PH_addr IP_addr) do (
if "%%i"=="!%%a!" set %%a=%%j
)
)
:: 移除前導標籤,保留純值
set PH_addr=%PH_addr:*:=%
set IP_addr=%IP_addr:*:=%
echo.
echo 您的網卡實體位址 (MAC):%PH_addr%
echo.
echo 您的區域網路 IP 位址:%IP_addr%
pause > nul
setlocal enabledelayedexpansion:啟用延遲環境變數擴展,支援 !var! 語法。for /f 逐行讀取 ipconfig /all,以點號 . 為分隔符,取得標籤與數值。%var:*:=% 字串替換語法,刪除冒號前的所有字元(含冒號),留下純淨位址。findstr /C:"乙太網路")。ipconfig /all 輸出調整 PH_addr、IP_addr 變數的關鍵字。