使用 dbatools 迭代服务器列表?

Iterate server list with 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/

我修改了你的脚本并进行了测试。为我工作。我又添加了 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}