Итерировать список серверов с помощью dbatools?

Я действительно новичок в PowerShell и все еще учусь, поэтому у меня есть требование запустить некоторые команды из dbatools и сохранить результаты.

$servers = 'E:\DBA\servers.txt'
$outfile = 'E:\DBA\out.csv'

Get-Content $servers | ForEach-Object {Invoke-Command DbaBackupHistory -SQLServer $_ | ConvertTo-CSV -NoTypeInformation | Select-Object -Skip 1 | Out-File -Append $outFile}

Я не уверен, что это правильный способ сделать это https://dbatools.io/functions/get-dbabackuphistory/

1 ответ

Решение

Я модифицировал ваш скрипт и протестировал. Работал на меня. Я добавил еще 2 переключателя, чтобы ограничить набор результатов. -database а также -lastfull, Вы можете проверить документацию для деталей.

$outfile = 'c:\out.csv'

Get-Content c:\servers.txt|foreach-object {get-DbaBackupHistory -SqlServer $_  
-database dbadatabase -lastfull | ConvertTo-CSV -NoTypeInformation | 
Select-Object -Skip 1 | Out-File -Append $outFile}
Другие вопросы по тегам