2023. február 7., kedd

Gyorskeresés

Windows 10 CMD Hálózati kapcsolat részletek

Írta: |

[ ÚJ BEJEGYZÉS ]

Hello Mindenkinek

Egy kis segítségre lenne szükségem,

Farigcsálok egy kis batch fájlt ami a következő lenne:

ECHO OFF
CLS
:MENU
ECHO.
ECHO ...............................................
ECHO These Settings will be applied on the Network Connection
ECHO which named LAN. Please rename the designated Network Connection to LAN!
ECHO Plug the network cable in both ends, and make sure the
ECHO the Adapter(LAN) is connected before select any of the options!
ECHO PRESS 1, 2, 3, 4 OR 5 to select your task, or 6 to EXIT.
ECHO ...............................................
ECHO.
ECHO 1 - Static IP 192.168.1.200 (MASK:255.255.255.0; Gateway:192.168.1.1)
ECHO 2 - Enter a Static IP (MASK:255.255.255.0; Gateway:192.168.1.1)
ECHO 3 - Manual Setup
ECHO 4 - Automatic DHCP Setting
ECHO 5 - IP CONFIG information on LAN
ECHO 6 - Exit
ECHO.
REM SET /P M=Type 1, 2, 3, 4 or 5:
CHOICE /C:123456
IF ERRORLEVEL 1 SET M=1
IF ERRORLEVEL 2 SET M=2
IF ERRORLEVEL 3 SET M=3
IF ERRORLEVEL 4 SET M=4
IF ERRORLEVEL 5 SET M=5
IF ERRORLEVEL 6 SET M=6
IF %M%==1 GOTO STATIC
IF %M%==2 GOTO STATIC_MANUAL
IF %M%==3 GOTO MANUAL
IF %M%==4 GOTO AUTO
IF %M%==5 GOTO IP_CONFIG
IF %M%==6 GOTO EOF
:STATIC
netsh interface ipv4 set address name="LAN" static 192.168.1.200 255.255.255.0 192.168.1.1
CLS
GOTO MENU
:STATIC_MANUAL
SET /P A=Type IP Address in then press ENTER:
netsh interface ipv4 set address name="LAN" static %A% 255.255.255.0 192.168.1.1
CLS
GOTO MENU
:MANUAL
SET /P IP_ADDRESS=Type IP Address in then press ENTER:
SET /P SUBNET_MASK=Type Subnet Mask Address in then press ENTER:
SET /P GATEWAY=Type Gateway Address in then press ENTER:
netsh interface ipv4 set address name="LAN" static %IP_ADDRESS% %SUBNET_MASK% %GATEWAY%
CLS
GOTO MENU
:AUTO
ipconfig /release "LAN"
netsh interface ipv4 set address name="LAN" dhcp
CLS
GOTO MENU
:IP_CONFIG
IPCONFIG /ALL
GOTO MENU

A problémám az IP_CONFIG résszel lenne, nekem csak egy hálózati kapcsolat részletei érdekesek, nem érdekel az összes. Bármilyen CMD-ben alkalmazható megoldás érdekel, ezt mint áthidaló használom, egyenlőre

Valaki tud erre megoldást véletlenül?

Előre is köszönöm :R

Hozzászólások

(#1) kemotox


kemotox
addikt

CMD-be írd be, hogy "ipconfig ?", és előjön a help. Van egy olyan rész ahol [adapter] meg lehet adni melyik kell neked, és csak azt fogja kihányni, ha jól értem

(#2) #90088192 válasza kemotox (#1) üzenetére


#90088192
törölt tag

Hello :)

Köszönöm :R

Mar néztem, sajnos:
/renew [adapter] | /release [adapter] |
/renew6 [adapter] | /release6 [adapter] |

Bármilyen megoldás érdekel, nem kötelező IP config, csak ami megy CMD-bol :R

[ Szerkesztve ]

(#3) UnA válasza #90088192 (#2) üzenetére


UnA
Korrektor

Ha lenne grep, akkor az lenne a legjobb, így marad a mezítlábas findstr:

ipconfig | findstr ". :"

(#4) #90088192 válasza UnA (#3) üzenetére


#90088192
törölt tag

Köszönöm :R

Holnap próbálom is ki :K

(#5) #90088192 válasza UnA (#3) üzenetére


#90088192
törölt tag

Hello Una :)

Próbáltam finomítani, így is kidobja az összes adapter releváns infót, de legalább eltűntek a fölösleges adatok, és üres sorok.
Próbáltam, hogy egy az egyben kimásolom az adapterhez tartozó szekciót, de sajnos a sorvégi ENTER miatt nem megy. :O
Sebaj marad így :K

Köszönöm még egyszer :R

(#6) UnA válasza #90088192 (#5) üzenetére


UnA
Korrektor

Az nekem eddig nem volt egyértelmű, hogy egy bizonyos "adapter" sorhoz tartozó adatokat akarod csak megmutatni. Ebben az esetben nincs más módszer, mint végigmenni egy ciklussal az ipconfig kimenetén:

@echo off
setlocal enabledelayedexpansion
set adaptername=Ethernet 2
set lineprint=0
for /f "tokens=*" %%l in ('ipconfig') do (
echo %%l | findstr "adapter" > nul
if not errorlevel 1 (
echo %%l | findstr /c:"%adaptername%:" > nul
if errorlevel 1 (set lineprint=0) else (set lineprint=1)
)
if !lineprint! == 1 echo %%l
)

Szerintem ronda, de sajnos ilyen a CMD :D

(#7) Gargouille


Gargouille
őstag

Ötletként (ha az aktív hálózati kapcsolat IP címe érdekel), akkor akár:

netsh interface ip show address | findstr "IP Address"

vagy

wmic nicconfig get IPAddress

vagy

wmic nicconfig where IPEnabled=true GET IPAddress /format:value

Nyilván a kimenetet még formázni kell ahogy neked tetszik.

Lassan kiderül, hogy amit korábban abszurd humornak gondoltunk, az csak szimpla jövőbelátás volt.

(#8) #90088192 válasza UnA (#6) üzenetére


#90088192
törölt tag

:R
Sajnos nem vagyok tisztában azzal milyen lehetőségek vannak. Ezért nem is tudtam tovább lépni ezügyben.

Köszönöm, hogy időt szakítottál rá.

(#9) #90088192 válasza Gargouille (#7) üzenetére


#90088192
törölt tag

Köszönöm szépen :R

(#10) Gargouille válasza #90088192 (#9) üzenetére


Gargouille
őstag

Nagyon szívesen! Mindig jó látni, hogy vannak még akik kísérletezgetnek, maguknak fejlesztgetnek ilyesmiket, ez értékes és támogatandó dolog. :)

Lassan kiderül, hogy amit korábban abszurd humornak gondoltunk, az csak szimpla jövőbelátás volt.

További hozzászólások megtekintése...
Copyright © 2000-2023 PROHARDVER Informatikai Kft.