だから、私はこのようなタスクに問題持っておくました:別のオブジェクトから展開された文字列のリストの処理を管理するにはどうすればよいですか?
$fileNames = Get-ChildItem -Path . -Filter "*.*" `
| Select-Object -ExpandProperty Name
$fileNames.GetType()
をI []は出力が文字列であることを期待したいが、それは[]オブジェクトです。
私は、ファイル名を操作しようとした場合、さらに悪い:
$fileNames = Get-ChildItem -Path . -Filter "*.*" `
| Select-Object -ExpandProperty Name `
| Select-Object { "$_" -replace '^.*deploy\.log\.\d\d\d\d-\d\d-\d\d\.', '' }
私は、文字列[]再び期待したいです。代わりに、正規表現をキーとして持つ奇妙なハッシュテーブルを取得します。
どちらの場合も、私が期待していることを、オブジェクトにラップするだけです。
ここでのルールは何ですか?私は文字列のリストを操作することはできますか?あなたの最後のパイプラインの要素として
をするForEach-Objectには、より多くのマップのようなものです。私。各項目に関数を適用し、リストを返しますか? LinqのForEachのような代わりに、各項目でアクションを取るが、何も返さない? –
'ForEach-Object'は' map'関数と似ています。各繰り返しからのアイテムの返品はオプションです –