続・PhowerShellでフォルダ内のファイルハッシュを取得する

以前PowerShellでフォルダ内のファイルのハッシュ値を取得しましたが。 PhowerShellでフォルダ内のファイルハッシュを取得する - キジモナカズバ

いやいや。自分でForEach-Objectとかで回さんでもソートしてからExport-Csvでタブ区切りできるやん。ってやってみました。

$algorithm="SHA512"
$delimtter="`t"
$encoding="UTF8"

do{
$path = Read-Host "対象パスを入力してください"
}while(!(Test-Path $path) )

cd $path
$here = Convert-Path .
$file = Join-Path (Split-Path -Parent $here) ($algorithm + "_" + (Split-Path -Leaf $here) + ".txt")

echo $file

$hash = Get-ChildItem -File -Recurs | Get-FileHash -Algorithm $algorithm | Sort-Object Path | Export-Csv  -Delimiter $delimtter -Encoding $encoding -Path $file

アルゴリズムは変数に浮かしてSHA512とか使ってます。 Pathが絶対パスになっちゃってるのはどうしようもないのかな…。 Export-CSV -Confirmオプション付けて確認ダイアログ出してみたら、ボタン多すぎてわけわからなんかったのでやめた。 あとは進捗的なの出そうと思ったらForEach-Object使った方がやりやすそうね。