Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » PowerShell - [решено] posh создание массива значений

Ответить
Настройки темы
PowerShell - [решено] posh создание массива значений

Старожил


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

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


Изображения
Тип файла: jpg 2020-01-31_145606.jpg
(46.3 Kb, 9 просмотров)
нужна помощь, в создании массива значений.

Код: Выделить весь код
$obj = New-Object –TypeName PSObject

$Computers = Get-ADComputer -Filter 'enabled -eq "true"' -Properties  Name, Operatingsystem, OperatingSystemVersion, OperatingSystemServicePack, IPv4Address | Select-Object -Property Name, Operatingsystem, OperatingSystemVersion, OperatingSystemServicePack, IPv4Address

Foreach ($Computer in $Computers)
{
	if (Test-Connection -ComputerName $Computer.Name -Count 1 -Quiet)
	{
		$sourceW32TM = w32tm /query /computer:$Computer.Name /source
		$statusServiceW32TM = (Get-Service -Name W32Time -ComputerName $Computer.Name).Status
		$precisionW32TM = (ConvertFrom-Csv -In ((w32tm /query /computer:$Computer.Name /status) -replace ':', ',') -H Status,Value)[2].value

		$obj  | Add-Member -MemberType NoteProperty -Name Name -Value $Computer.Name -pass |
		Add-Member -MemberType NoteProperty -Name Operatingsystem -Value $Computer.Operatingsystem -pass |
		Add-Member -MemberType NoteProperty -Name OperatingSystemVersion -Value $Computer.OperatingSystemVersion -pass |
		Add-Member -MemberType NoteProperty -Name OperatingSystemServicePack -Value $Computer.OperatingSystemServicePack -pass |
		Add-Member -MemberType NoteProperty -Name IPv4Address -Value $Computer.IPv4Address -pass |
		Add-Member -MemberType NoteProperty -Name TestConnection -Value "true" -pass |
		Add-Member -MemberType NoteProperty -Name sourceW32TM -Value $sourceW32TM -pass |
		Add-Member -MemberType NoteProperty -Name statusServiceW32TM -Value $statusServiceW32TM -pass |
		Add-Member -MemberType NoteProperty -Name precisionW32TM -Value $precisionW32TM
	}
	else {
		$obj  | Add-Member -MemberType NoteProperty -Name Name -Value $Computer.Name -pass |
		Add-Member -MemberType NoteProperty -Name Operatingsystem -Value $Computer.Operatingsystem -pass |
		Add-Member -MemberType NoteProperty -Name OperatingSystemVersion -Value $Computer.OperatingSystemVersion -pass |
		Add-Member -MemberType NoteProperty -Name OperatingSystemServicePack -Value $Computer.OperatingSystemServicePack -pass |
		Add-Member -MemberType NoteProperty -Name IPv4Address -Value $Computer.IPv4Address -pass |		
		Add-Member -MemberType NoteProperty -Name TestConnection -Value "false"
	}
}
Write-Output $obj

должна получится таблица как во вложении.
или ссылку на код как это сделать.

Отправлено: 15:00, 31-01-2020

 

Аватара для DJ Mogarych

fascinating rhythm


Moderator


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

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


Код: Выделить весь код
$computers = Get-ADComputer -Filter 'enabled -eq "true"' -Properties Operatingsystem,OperatingSystemVersion,OperatingSystemServicePack,IPv4Address |
Select Name,Operatingsystem,OperatingSystemVersion,OperatingSystemServicePack,IPv4Address,sourceW32TM,statusServiceW32TM,precisionW32TM

$computers |% {
    if (Test-Connection $_.name -Count 1 -Quiet) {
    $w32tm = w32tm /query /computer:"$($_.Name)" /status
    $_.sourceW32TM = $w32tm[-3].Trim() -replace "^.*\s"
    $_.statusServiceW32TM = (Get-Service -Name W32Time -ComputerName "$($_.Name)").Status
    $_.precisionW32TM = $w32tm[2] -replace "^.*\:\s" -replace "\s\(.*$"
    }
}

$computers

-------
Powershell 7.x | Powershell 5.1 | ffmpeg (docs)

Это сообщение посчитали полезным следующие участники:

Отправлено: 16:11, 31-01-2020 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » PowerShell - [решено] posh создание массива значений

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
[решено] Создание массива через Assign -TRM- AutoIt 10 16-03-2019 23:17
PowerShell - [решено] создание массива в цикле Neldoreth_inf Скриптовые языки администрирования Windows 2 24-02-2017 07:42
2008 - Создание Raid массива без потери данных NikiWin Windows Server 2008/2008 R2 7 24-02-2011 07:58
Delphi - Создание массива кнопок VovanZ Программирование и базы данных 3 24-12-2009 22:49
Создание динамического массива на Pascal-е Skynet Программирование и базы данных 3 09-10-2004 18:05




 
Переход