1

次のような文字列で満たされた配列があります (SHA256 チェックサムとセミコロンで区切られた相対パス):

e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855;./zzz.txt
d0c4c3e65c450251e44ec41c3c6ee0ea456d02bd74f041c9299934176ec325e6;./kkk.xlsx
9a1d469cdc7c2072b19a7e483a818c5e4e9de070298c60b34de29930e7b79209;./árvíztűrő tükörfúrógép/kkk - Shortcut.lnk

そして、これらの行を 2 列目で並べ替えたいと思います。したがって、ソートされた配列は次のようになります。

9a1d469cdc7c2072b19a7e483a818c5e4e9de070298c60b34de29930e7b79209;./árvíztűrő tükörfúrógép/kkk - Shortcut.lnk
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855;./zzz.txt
d0c4c3e65c450251e44ec41c3c6ee0ea456d02bd74f041c9299934176ec325e6;./kkk.xlsx

ヘッダーなどはありません。唯一のものは;、フィールドを区切るセミコロン ( ) 文字です。

4

2 に答える 2

5

変数に配列を使用:

  $a | sort  {$_  -replace  "(.*;\./)", ''}
于 2012-06-15T14:12:23.447 に答える
2

コンテンツをcsv形式に変換し、セミコロン区切り文字でコンテンツを解析し、ヘッダーを追加して、Pathプロパティで出力を並べ替えます。

@"
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855;./zzz.txt
d0c4c3e65c450251e44ec41c3c6ee0ea456d02bd74f041c9299934176ec325e6;./kkk.xlsx
9a1d469cdc7c2072b19a7e483a818c5e4e9de070298c60b34de29930e7b79209;./árvíztűrő tükörfúrógép/kkk - Shortcut.lnk
"@ | ConvertFrom-Csv -Header Checksum,Path -Delimiter ';' | Sort-Object Path


Checksum                                                                   Path                                                                      
--------                                                                   ----                                                                      
9a1d469cdc7c2072b19a7e483a818c5e4e9de070298c60b34de29930e7b79209           ./árvíztűrő tükörfúrógép/kkk - Shortcut.lnk                               
d0c4c3e65c450251e44ec41c3c6ee0ea456d02bd74f041c9299934176ec325e6           ./kkk.xlsx                                                                
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855           ./zzz.txt
于 2012-06-15T13:39:53.317 に答える