Invoke-sqlcmd输出没有“引号”和标题

时间:2017-03-27 13:34:32

标签: powershell invoke-sqlcmd

输出示例:

#TYPE System.Data.DataRow <---
"PersonalNr" <---
"00001005"
"00001008"
"00001009"
"00001013"
"00001019"
"00001024"

要求:

我想要一个不带第一行而没有引号的输出,我该怎么做?

对于标题我尝试了-h -1选项,但输出仍然相同。甚至可以使用Sqlcmd

当前代码:

Invoke-Sqlcmd -ServerInstance SERVER -h -1 -Query $QueryFmt | Export-CSV $AttachmentPath

3 个答案:

答案 0 :(得分:3)

此代码应该有效:

Invoke-Sqlcmd -ServerInstance "" -Database "" -Query "" | ConvertTo-Csv -NoTypeInformation -Delimiter "," | Select-Object -Skip 1 | % {$_ -replace '"', ""} | Out-File ("C:\test.csv") -Force -Encoding ascii

Invoke-Sqlcmd产生:

PersonalNr       
---    
00001005  
00001001  
00001006  
00001007  
00001008 

使用Export-Csv,文件如下:

#TYPE System.Data.DataRow
"PersonalNr"
"00001005"
"00001001"
"00001006"
"00001007"
"00001008"

使用我上面提到的代码,我得到的文件如下:

00001005
00001001
00001006
00001007
00001008

答案 1 :(得分:0)

试试这个:

## You data for export to csv
$csv = Invoke-Sqlcmd -ServerInstance SERVER  -Query $QueryFmt
# 

##Will remove type information  and will remove header
$csv | Export-CSV -NoTypeInformation | select -Skip 1 | Set-Content $AttachmentPath 
#

答案 2 :(得分:0)

尝试一下

$ query_result |格式表-AutoSize-环绕-HideTableHeaders

相关问题