-- a.txt -----
No,Speed,Distance
N0,200,600
N500,260,250
N700,280,500
N100,220,400
これを、「Distance 」の降順にした。
-- sortSample.ps1 ----
$CSVDATA=""
$CSVData =Import-Csv "X:\XXXXXXXXXXXXXX\a.txt"
$tScoreSort = $CSVData | Sort-Object Distance -Descending
$tScoreSort
-- 結果 ----
NAME SPEED Distance
---- ----- --------
N0 200 600
N700 280 500
N100 220 400
N500 260 250
CSVではなく、ソース内で完結したいのだが、どうもうまくいかない。
配列を色々試してみたが、
「デバッグ: "Sort-Object" - "Distance" が "InputObject" にありません。」
と、なんだか要素をうまく引き渡せてない。
最終的に、PSObjectを使って何とか動かした。
-- sortSample3.ps1 -----
$tbl = ,@("N0",200,600)
$tbl += ,@("N500",260,250)
$tbl += ,@("N700",280,500)
$tbl += ,@("N100",220,400)
$PsDatas = @()
for( $jj =0 ;$jj -lt $tbl.Length;$jj++)
{
$PsData = New-Object PSObject | Select-Object No, Speed, Distance
$PsData.No =$tbl[$jj][0]
$PsData.Speed =$tbl[$jj][1]
$PsData.Distance =$tbl[$jj][2]
$PsDatas += $PsData
}
$tScoreSort = $PsDatas | Sort-Object "Distance" -Descending
$tScoreSort
-- 結果 ----
NAME SPEED Distance
---- ----- --------
N0 200 600
N700 280 500
N100 220 400
N500 260 250
本日の河上選手:お休み
2/25 ~ 若松