Имя пользователя:
Пароль:
 

Показать сообщение отдельно

Старожил


Сообщения: 211
Благодарности: 2

Профиль | Отправить PM | Цитировать


Цитата Iska:
Вы ринулись в бой, не продумав стройной системы сбора. »
вы абсолютно правы, но дело не в том, что я не хочу этого делать, дело в том, что не могу из-за отсутствия знаний в PS, а делать уже надо. Я начал изучать ps, но пока мало знаю. С последнего сообщения переделал скрипт и получил часть того чего хотел.
ремикс
Код: Выделить весь код
 Param(
    [String]$a=((Get-Date).ToShortDateString() | Foreach-Object {$_ -replace "\.", ""}) ,
	[string]$outfile = "D:\PowerShell\франкин\test\1111.csv",
    $pp = "05server"
    	)

$PSComputerName = Get-WmiObject -computername $pp Win32_NetworkAdapter -Filter "NetConnectionStatus>0" |foreach {$_.PSComputerName}
$MACAddress = Get-WmiObject -computername $pp Win32_NetworkAdapter -Filter "NetConnectionStatus>0" |foreach {$_.MACAddress} 
$namenet = Get-WmiObject -computername $pp Win32_NetworkAdapter -Filter "NetConnectionStatus>0" |foreach {$_.name}
$AdapterType = Get-WmiObject -computername $pp Win32_NetworkAdapter -Filter "NetConnectionStatus>0" |foreach {$_.AdapterType}
$Speed = Get-WmiObject -computername $pp Win32_NetworkAdapter -Filter "NetConnectionStatus>0" |foreach {$_.Speed} 
$Manufacturer = Get-CimInstance -computername $pp -ClassName Win32_ComputerSystem  |foreach {$_.Manufacturer}  
$Model = Get-CimInstance -computername $pp -ClassName Win32_ComputerSystem  |foreach {$_.Model} 
$SN = Get-WmiObject -computername $pp Win32_BaseBoard | foreach {$_.SerialNumber}        

$hash_object = [ordered] @{PSComputerName = $PSComputerName; Manufacturer = $Manufacturer; Model = $Model; Serialnumber = $SN; MACAddress = $MACAddress; name = $namenet; AdapterType = $AdapterType; Speed = $Speed;  } 
$ps_object = [pscustomobject]$hash_object
$ps_object | export-csv $outfile -notype -enc utf8 -d ';' -append
резуьлтат
Код: Выделить весь код
"PSComputerName";"Manufacturer";"Model";"Serialnumber";"MACAddress";"name";"AdapterType";"Speed"
"05server";"Hewlett-Packard";"HP ProDesk 400 G2 MT";"CZC44843RP";"A0:D3:C1:4D:6B:CE";"Realtek PCIe GBE Family Controller #4";"Ethernet 802.3";"1000000000"
как всегда есть проблема, не могу допереть умом как в это все еще добавить инфу о мониторах, в соседней теме подсказали как получить инфу
Код: Выделить весь код
$m = gwmi wmimonitorid -Namespace root\wmi
[string][char[]] ($m.UserFriendlyName) -join ""
[string][char[]] ($m.SerialNumberID) -join ""
результат
Код: Выделить весь код
HP E231      HP E231      
3CQ4070X4Z      6CM4221RHC
не могу понять как из этого вычленить сначала первый монитор, а потом второй и записать в одну строку подобно остальной инфе. И как заполнить пустые столбики чем-либо если конфигурация одним монитором.

А точнее, лучше не вычленять из результата, а сразу писать результат как надо.

Отправлено: 15:35, 02-06-2020 | #13