0

我编写了一个小型 powershell 脚本,它从文本文件中读取 sql server 实例的名称,然后循环它们并将查询结果输出到文本文件。

foreach ($Instance in Get-Content C:\temp\SQLServers.txt)
{
$Instance;
$File ="c:\temp\SqlLoopLog.txt"
Add-Content $File "`r`n$Instance"
Invoke-Sqlcmd -ServerInstance $Instance -Database msdb -Query "select * from dbo.[sysjobs]" | Out-File $File 
}

但是当调用 Invoke-Sqlcmd 时,文件 SqlLoopLog.txt 的内容每次都会重新设置。但是,如果我添加 -append 则信息将在一行而不是几行中输出,并且不可读。如何以可读格式输出数据?

4

1 回答 1

0

你能试一下吗 :

$output=(Invoke-Sqlcmd -ServerInstance $Instance -Database msdb -Query "select * from dbo.[sysjobs]").tostring()
$output+="`n"
$output | out-file -append $file
于 2013-02-14T12:46:39.243 回答