none
Script ip - dhcp RRS feed

  • Pergunta

  • Boa tarde,

    Tenho um micro que está recebendo ip de um servidor dhcp, preciso que esse ip seja setado "manualmente" .

    Alguém aí com um script para pegar esse ip e setar depois na variável:

    netsh interface ipv4 set address name="ConexÆo Local" static x.x.x.x 255.255.255.0

    no caso eu preciso que ele pegue o ip que está via dhcp e depois automaticamente setar esse ip manualmente.


    Thi@go

    quarta-feira, 5 de julho de 2017 18:12

Todas as Respostas

  • Ola Thiago,

    bom acho que é isso o que você quer:

    @echo off
    
    rem --- complete adapter name to find without the ending ":" ---
    set adapter=Adaptador Ethernet ConexÆo local
    
    rem --- token under an adapter to extract IP address from ---
    set IPAddrToken=Endere‡o IPv4
    
    setlocal enableextensions enabledelayedexpansion
    set adapterfound=false
    set emptylines=0
    set ipaddress=
    
    for /f "usebackq tokens=1-3 delims=:" %%e in (`ipconfig ^| findstr /n "^"`) do (
    
        set "item=%%f"
    
        if /i "!item!"=="!adapter!" (
            set adapterfound=true
            set emptylines=0
        ) else if not "!item!"=="" if not "!item!"=="!item:%IPAddrToken%=!" if "!adapterfound!"=="true" (
            @rem "!item:%IPAddrToken%=!" --> item with "IPv4 Address" removed
            set ipaddress=%%g
            goto :result
        )
        if "%%f-%%g-!adapterfound!-!emptylines!"=="--true-1" (
            @rem 2nd blank line after adapter found
            goto :result
        )
        if "%%f-%%g-!adapterfound!-!emptylines!"=="--true-0" (
            @rem 1st blank line after adapter found
            set emptylines=1
        )
    )
    
    endlocal
    
    :result
        echo %adapter%
        echo.
        if not "%ipaddress%"=="" (
            echo %IPAddrToken% =%ipaddress%
    		netsh interface ipv4 set address name="ConexÆo Local" static %ipaddress% 255.255.255.0
        ) else (
            if "%adapterfound%"=="true" (
                echo    %IPAddrToken% Not Found
            ) else (
                echo    Adapter Not Found %IPAddrToken%
            )
        )
        echo.
    
    pause
    Link do forum que continha esse script:

    https://stackoverflow.com/questions/5898763/how-do-i-get-the-ip-address-into-a-batch-file-variable/15285647#15285647


    att, Aparecido Deveza

    • Sugerido como Resposta Aparecido Deveza quinta-feira, 6 de julho de 2017 12:49
    quinta-feira, 6 de julho de 2017 02:57
  • Rapaz dei uma lida no script e acho que é isso mesmo, vou testar.

    Muito obrigado!


    Thi@go

    quinta-feira, 6 de julho de 2017 10:26
  • Bom dia, Aparecido.

    Funcionou certinho, salvei como .bat e fez exatamente o que eu precisava.

    Muito obrigado!


    Thi@go

    quinta-feira, 6 de julho de 2017 10:58