質問: ### 前提・実現したいこと バッチ・Powershellを触り始めて3か月程度です。 バッチから呼び出したPowershellでハッシュ値のチェックをしたい。 ${env:FOLDER2}にはD:\test01~03 ${env:FNAME}にはtest01~03.txt が入っています。 ### 発生している問題・エラーメッセージ 手動で$a+=へ01~03を代入してからOut-Fileではハッシュ値が3行分出力される。 MD5 ハッシュ値 D:\test01\test01.txt MD5 ハッシュ値 D:\test02\test02.txt MD5 ハッシュ値 D:\test03\test03.txt ↑のようにテキストへ出力したいのですが 実際にバッチから呼び出すと最終行である $a+→Out-File $a+→Out-Fileと動いてしまい, MD5 ハッシュ値 D:\test03\test03.txt のみしか出力されていない状態になっています。 全部出力させるにはどのような案がありますでしょうか。 遅延環境変数は入れていて,Write-HostでPath表示させるときちんと動いています。 ``` $a= $b= $c= $a+$b+$c ``` という風に動かせば動くのですが,3つだったり4つだったりと,いつも同じ数字になるとは限らないので,いい方法をご教授願いたいです。 ### 該当のソースコード ``` $a+=childitem -Path ${env:FOLDER2}\${env:FNAME} | get-filehash -Algorithm md5 | Format-Table -AutoSize $a | Out-File "D:\Chk\SUM.txt" -Encoding UTF8 ```
回答: まずは、「Powershell ループ」でぐぐってみよう