윈도우/Batch 파일

[Windows Batch] 네트워크 어댑터 이름, ip주소 출력, 파일 저장

안산드레아스 2024. 4. 2. 18:08
반응형

Batch 파일로 현재 PC의 Network Adapter를 모두 찾아내고, 그 아래 부여된 IP주소를 출력.

여기서 IP주소는 IPv4, IPv6 를 의미.

 

 

코드

@echo off
setlocal enabledelayedexpansion

REM 임시 파일 생성
ipconfig > temp.txt

REM "Ethernet adapter" 또는 "Wireless LAN adapter"가 포함된 줄을 찾아서 임시 파일에 저장
findstr /r /c:"Ethernet adapter" /c:"Wireless LAN adapter" temp.txt > temp2.txt

REM 임시 파일에서 라인 단위로 읽으면서 어댑터 명과 IP 주소를 출력
for /f "tokens=1-2 delims=:" %%a in (temp2.txt) do (
    set "adapter=%%a"
    set "adapter=!adapter:~0,-1!"
    echo !adapter!

    REM 각 어댑터에 대한 IP 주소 출력
    for /f "tokens=2 delims=:" %%i in ('ipconfig ^| findstr /r /c:"IPv4 Address" /c:"IPv6 Address"') do (
        set "ip_address=%%i"
        set "ip_address=!ip_address: =!"
        echo IP Address: !ip_address!
    )
)

pause

 

temp1 파일

temp2 파일

 

temp2 파일에서 어댑터와 IP주소만 읽어서 출력.

결과

 

 

 

아래 코드는 한번 adapter를 보여주고 pause 후 ip 주소를 보여줌.

 

코드

@echo off
setlocal enabledelayedexpansion

REM 어댑터 이름 가져오기
for /f "tokens=1-2 delims=:" %%a in ('ipconfig ^| findstr /r /c:"Ethernet adapter" /c:"Wireless LAN adapter"') do (
    set "adapter=%%a"
    set "adapter=!adapter:~0,-1!"
    echo !adapter!
)

pause

REM IP 주소 가져오기
for /f "tokens=2 delims=:" %%a in ('ipconfig ^| findstr /r /c:"IPv4 Address"') do (
    set "ip_address=%%a"
    set "ip_address=!ip_address: =!"
    echo   !adapter!: !ip_address!
)

pause

 

결과

 

 

 

 

 

 

 

 

반응형