チャブーンです。
上記のような感じで、各ファイルに対して処理を行おうと思いましたが、
$aがFILEINFOオブジェクトなのでうまくいきません。 普通にコマンド結果から取得したファイルパス名などの
文字列を コマンド引数の文字列パス名として使うにはどのようにすればよいでしょうか?
操作対象オブジェクトの「フルパス名」が文字列としてほしい場合、ムリにSelectはせず参照時にFullNameプロパティ値を呼び出します。
$a=dir
foreach ( $e in $a ) {
cat $e.FullName | 何かファイル編集処理等
}
うえの方法が一番スマート(オブジェクトをオブジェクトとして扱えるので)な気がしますが、どうしても文字列の配列でないと気に入らない、ということでしたら、したのような方法も採れます。
$a=dir | select fullname | Foreach {$_.fullname}
foreach ( $e in $a ) {
cat $e | 何かファイル編集処理等
}
うえは、1行目でオブジェクトのプロパティをselectした後、各オブジェクトのプロパティ値($_.fullname)をループさせて、変数に代入しています。プロパティ値はString型ですから、String型変数として配列に読み込まれる、ということになります。
フォーラムは有償サポートとは異なる「コミュニティ」です。フォーラムでご質問頂くにあたっての注意点 をご一読のうえ、お楽しみください。