如何將Format-Table
Cmdlet的輸出縮進到特定列?在PowerShell腳本中縮進格式表輸出
我:
> $SomeValues | Format-Table -HideTableHeaders
A 1
B 2
C 3
,但我想:
A 1
B 2
C 3
如何將Format-Table
Cmdlet的輸出縮進到特定列?在PowerShell腳本中縮進格式表輸出
我:
> $SomeValues | Format-Table -HideTableHeaders
A 1
B 2
C 3
,但我想:
A 1
B 2
C 3
謝謝大家對你的答案。他們幫助我弄清楚如何使用計算的屬性來執行我想要的操作。由於表格中列之間的自動單個字符空間,因此Expression
必須小於縮進量。
如果您使用的-AutoSize
標誌:如果你不使用-AutoSize
標誌
Write-Host "Not indented"
Write-Host " Indented"
$a = @{ Aa = 1; Bbb = 2; Cccc = 300}
$a | Format-Table -Property @{Expression=" "},Name,Value -AutoSize -HideTableHeaders
:
Write-Host "Not indented"
Write-Host " Indented"
$a = @{ Aa = 1; Bbb = 2; Cccc = 300}
$a | Format-Table -Property @{Expression={}; Width=3},Name,Value -HideTableHeaders
輸出看起來像:
Not indented
Indented
Bbb 2
Aa 1
Cccc 300
如何$SomeValues | Format-Table -HideTableHeaders -Auto
?
你的意思是-自動尺寸?這與問題無關,該選項只是改變列的寬度。 – 2011-03-01 16:27:45
啊..我的不好。我誤解了這一點。您可以在這種情況下使用格式說明符,而不是格式 - 表 – ravikanth 2011-03-01 16:30:28
PS> $a= @{A=1;B=2;C=3}
PS> $a.GetEnumerator()|%{ "{0,10}{1,5}" -f $_.key,$_.value}
A 1
B 2
C 3
PS>
?
關閉,但我希望兩列都是左對齊的。我嘗試了你的例子,第一列變成了右對齊。 – 2011-03-01 16:30:07
$ a.GetEnumerator()| %{「{0,5} {1,5}」-f $ _。key,$ _。value} – ravikanth 2011-03-01 16:38:19
管道調用後的語法是什麼?我想閱讀它。 – 2011-03-01 16:43:52
其實,你可以使用英尺,-AutoSize
$a= @{A=1;B=2;C=3}
$a.getenumerator() | ft blah,name,value -hidetableheaders -auto
A 1
B 2
C 3
爲什麼表有右對齊? – 2012-10-03 09:48:52
@SalvatoreDiFazio:你的意思是在數字的列?這是PowerShell打印數字的默認方式。這很有用,因爲所有的小數位都排在一起以便於比較。 – 2012-10-03 13:29:15
在我的情況下,我有很多' - '字符,這些信息位於我的powershell控制檯 – 2012-10-03 13:45:11