как объединить все результаты в один файл cvs в виде таблицы.
Get-ADSyncToolsRunstepHistory | Where {$_.RunProfileName -match "Delta Import"} |Select-Object -Index 0, 1|Select-Object @{N='ServerName';E = {"$env:COMPUTERNAME"}} ,StartDate, EndDate, ConnectorName, RunProfileName, StepResult
Get-ADSyncToolsRunstepHistory | Where {$_.RunProfileName -match "Delta Synchronization"} |Select-Object -Index 0, 1|Select-Object @{N='ServerName';E = {"$env:COMPUTERNAME"}} ,StartDate, EndDate, ConnectorName, RunProfileName, StepResult
Get-ADSyncToolsRunstepHistory | Where {$_.RunProfileName -match "Full Import"} |Select-Object -Index 0, 1|Select-Object @{N='ServerName';E = {"$env:COMPUTERNAME"}} ,StartDate, EndDate, ConnectorName, RunProfileName, StepResult
Get-ADSyncToolsRunstepHistory | Where {$_.RunProfileName -match "Full Synchronization"} |Select-Object -Index 0, 1|Select-Object @{N='ServerName';E = {"$env:COMPUTERNAME"}} ,StartDate, EndDate, ConnectorName, RunProfileName, StepResult
Если я правильно понимаю, вы хотите экспортировать все результаты в один CSV, в этом случае это можно сделать так:
$props = @(
@{
N='ServerName'
E = { $env:COMPUTERNAME }
}
'StartDate'
'EndDate'
'ConnectorName'
'RunProfileName'
'StepResult'
)
$profiles = @(
'Delta Import'
'Delta Synchronization'
'Full Import'
'Full Synchronization'
) -join '|'
Get-ADSyncToolsRunstepHistory | Group-Object RunProfileName |
Where-Object Name -Match $profiles | ForEach-Object {
# select the first 2 objects for each group of objects
# matching the `$profiles`
$_.Group | Select-Object -First 2
} | Select-Object $props | Export-Csv path\to\export.csv -NoTypeInformation
Это использует Group-Object и Where-Object для фильтрации первых 2 объектов каждого профиля, таким образом, есть один вызов Get-ADSyncToolsRunstepHistory
.
Мне нужно запустить этот скрипт на трех разных серверах, и эти данные также должны получить один файл CSV. как мне поступить?
@hackrks в этом случае вся логика должна находиться внутри блока сценария Invoke-Command
, за исключением вызова | Select-Object $props | Export-Csv ...
, который должен быть снаружи. Если у вас есть проблемы с этим, задайте новый вопрос, и я помогу вам. Сделайте ссылку на этот ответ в своем новом вопросе
Привет @SantiagoSquarzon Я разместил вопрос, не могли бы вы помочь мне по этой ссылке
Спасибо, это работает отлично, как и ожидалось: D