Показать полную графическую версию : Получить mac-адрес проводной сетевой карты.
Griboed0ff
19-04-2020, 10:05
Доброго всем времени суток, нуждаюсь в помощи, нужно экспортировать в .csv мак-адрес именно проводной сетевой карты.
Griboed0ff, интересно, вы гуглить пытаетесь или сразу на форум идете? https://www.google.com/search?q=powershell%20get%20only%20ethernet%20mac%20address
Griboed0ff
19-04-2020, 10:21
интересно, вы гуглить пытаетесь или сразу на форум идете? »
если честно пытался искать, но мне непонятно как сделать вывод в файл только самого адреса без названия сетевой карты.
Get-CimInstance win32_networkadapterconfiguration | select description, macaddress | where {$_.MACAddress -ne $null }
description macaddress
----------- ----------
Realtek PCIe GBE Family Controller A0:D3:C1:4D:51:2Dа нужно только сам адрес с именем типа "сетевая карта".
…только самого адреса без названия сетевой карты. »
Griboed0ff, разумеется, убрать свойство description из запроса.
Griboed0ff
19-04-2020, 11:15
разумеется, убрать свойство description из запроса. »
Get-CimInstance win32_networkadapterconfiguration | select macaddress | where {$_.MACAddress -ne $null } | export-csv -Path D:\PowerShell\mac.csv -Delimiter ';' -Encoding utf8 -NoTypeInformation теперь выводится слово macaddress а ниже результат A0:D3:C1:4D:51:2D. Как можно заменить слово "macaddress" на "сетевая карта"?
Get-CimInstance win32_networkadapterconfiguration | select description, macaddress | where {$_.MACAddress -ne $null } »
(Get-CimInstance win32_networkadapterconfiguration | where {$_.MACAddress -ne $null } | select macaddress).macaddress
Griboed0ff
19-04-2020, 11:35
(Get-CimInstance win32_networkadapterconfiguration | where {$_.MACAddress -ne $null } | select macaddress).macaddress »
сделал, но теперь вывод не работает (Get-CimInstance win32_networkadapterconfiguration | where {$_.MACAddress -ne $null } | select macaddress).macaddress | export-csv -Path D:\PowerShell\mac.csv -Delimiter ';' -Encoding utf8 -NoTypeInformation результат Length
17
если просто ввожу вашу команду то выдает просто мак адрес, но не могу прикрутить вывод. Я пару дней назад узнал про PS, поэтому знаний на такое действие не хватает еще.
но теперь вывод не работает »
А, т.е. требуется:
Как можно заменить слово "macaddress" на "сетевая карта"? »
?
Тогда так:
Get-CimInstance win32_networkadapterconfiguration | where {$_.MACAddress -ne $null } |
select @{n='Сетевая карта';e={$_.macaddress}}|
export-csv 'D:\PowerShell\mac.csv' -Delimiter ';' -Encoding utf8 -NoTypeInformation
Griboed0ff
19-04-2020, 12:55
Get-CimInstance win32_networkadapterconfiguration | where {$_.MACAddress -ne $null } |
select @{n='Сетевая карта';e={$_.macaddress}}|
export-csv 'D:\PowerShell\mac.csv' -Delimiter ';' -Encoding utf8 -NoTypeInformation »
это работает, спасибо большое.
данные по проводным картам получают так:
Get-WmiObject Win32_NetworkAdapter -Filter 'AdapterTypeId = 0 and MACAddress is not null'
Griboed0ff
19-04-2020, 13:09
данные по проводным картам получают так: » спасибо, но нужно было только в .csv сложить мак со словом сетевая карта.
Интересно я если поменяю на винде мак, то получу значение, которое я написал? Есть ли способ снять данные именно с самой сетевушки без учета, что там думает ос?
спасибо, но нужно было только в .csv сложить мак со словом сетевая карта »
если вы не в состоянии самостоятельно собрать результирующее выражение и из кода YuS_2 и моего, вам стоит более пристально рассмотреть готовые решения по "инвентаризации"
Get-WmiObject Win32_NetworkAdapter -Filter 'AdapterTypeId = 0 and MACAddress is not null' |
select @{n='Сетевая карта';e={$_.macaddress}}|
export-csv 'D:\PowerShell\mac.csv' -Delimiter ';' -Encoding utf8 -NoTypeInformation
Интересно я если поменяю на винде мак, то получу значение, которое я написал? »
ну так попробуйте - это быстрее, чем дожидаться ответов на форуме, а потом всё равно проверять ;-)
Есть ли способ снять данные именно с самой сетевушки без учета, что там думает ос? »
ОС тут не при чём, она ничего не "думает"
новый MAC прописывается в сетевую карту и под ним она видна в сети сразу после включения компьютера, ещё до загрузки ОС
(по крайней мере так оно задумывалось)
Griboed0ff
19-04-2020, 14:23
если вы не в состоянии самостоятельно собрать результирующее выражение и из кода YuS_2 и моего, вам стоит более пристально рассмотреть готовые решения по "инвентаризации" » я имел ввиду, что YuS_2 уже дал нужное решение и оно работает. А про смену мака буду пробовать.
Get-WmiObject Win32_NetworkAdapter -Filter 'AdapterTypeId = 0 and MACAddress is not null'
select @{n='Сетевая карта';e={$_.macaddress}}|
export-csv 'D:\PowerShell\mac.csv' -Delimiter ';' -Encoding utf8 -NoTypeInformation » результат: п»ї
Griboed0ff, да, потерял оператор конвейера - поправил
Griboed0ff
19-04-2020, 14:32
поправил »
проверил работает корректно, это получается второе решение в теме!
Griboed0ff, нет, оба решения делают не то, что вы просили
YuS_2 не задумывался о существовании беспроводных адаптеров, а я заблуждался на счёт типа адаптера возвращаемого WMI - мой вариант отсекает 4G-модем, но всё равно выводит Bluetouth и Wi-Fi - и то, и другое числятся как Ethernet 802.3 :-(
Griboed0ff
19-04-2020, 15:24
нет, оба решения делают не то, что вы просили » действительно в основном пк только с одной сетевушкой, а потом следует зоопарк ноутов и прочего.
У меня оба кода возвращают четыре MAC-адреса. При наличии одной физической сетевой карты (нет подключений) и одного беспроводного соединения (через USB WiFi адаптер). Плюс парочка виртуальных — VirtualBox Host-Only Ethernet Adapter и Адаптер мини-порта виртуального WiFi Microsoft.
Посему автору следует определиться, что же именно он хочет увидеть.
DJ Mogarych
19-04-2020, 15:52
Есть очень удобная команда в PS:
Get-NetAdapter -Physical |? ndismedium -eq 0
Griboed0ff
19-04-2020, 16:07
Посему автору следует определиться, что же именно он хочет увидеть. » нужна мак физическая проводная сетевая карта
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.