【发布时间】:2016-11-27 10:15:03
【问题描述】:
我正在尝试输出 Skype 响应组队列的不同属性以用于文档目的。
我想将Name、TimeoutThreshold、TimeoutAction、Timeouturi、OverflowThreshold、OverflowAction、OverflowCandidate 作为第 1 行中的 .csv 文件头,然后输出为从第 2 行开始在各个列中输入。
我在下面尝试过,但格式真的很糟糕,并且标题不断重复。有人可以帮忙吗?
也尝试在 HTML 中获取输出,但没有成功。
$p = Get-CsRgsQueue | Where-Object {$_.Name -like "IPL*"} | Select-Object Name
foreach ($Name in $p)
{
$q = Get-CsRgsQueue -Name "$Name"
$N = $q.Name
$TT = $q.TimeoutThreshold
$TA = $q.TimeoutAction.Action
$TAU = $q.TimeoutAction.uri
$OF = $q.OverflowThreshold
$OFA = $q.OverflowAction
$OFC = $q.OverflowCandidate
$out = New-Object PSObject
$out | Add-Member NoteProperty QueueName $N
$out | Add-Member NoteProperty Timeout $TT
$out | Add-Member NoteProperty TimeoutAction $TA
$out | Add-Member NoteProperty TransferURI $TAU
$out | Add-Member NoteProperty OverflowThreshhold $OF
$out | Add-Member NoteProperty OverflowAction $OFA
$out | Add-Member NoteProperty OverflowCandidate $OFC
$out | FT -AutoSize | Export-Csv C:\abc.csv -Append
}
【问题讨论】:
-
你必须省略` | FT -AutoSize` 在最后一行。
-
为了整理它,你可以为你的属性使用一个哈希表,它被称为 splatting。希望格式看起来没问题。已编辑 *** Grr,很抱歉下面的格式。
-
foreach ($name in $P) $properties = @{ $q = get-csrgsqueue -name "$Name" $N = $q.Name $TT = $q.TimeoutThreshold $TA = $q.TimeoutAction.Action $TAU= $q.TimeoutAction.uri $OF= $q.OverflowThreshold $OFA= $q.OverflowAction $OFC= $q.OverflowCandidate } new-object -TypeName psobject -Property $properties
-
如果格式正常,每个属性都应该在一个新行上。
标签: powershell formatting export-to-csv