0
なんらかの理由で私は突然問題が発生したスクリプトを持っています。多分同僚がそれを修正した、私は知らないが、私はそれを再び実行する必要があります。ForEach-Object: 'System.Object []'を変換できません
これが問題を引き起こしている私のスクリプトです:
$result = ForEach-Object $filter {
Select-String -Pattern $pattern |
Select-Object Path, LineNumber, Line }
$result | Export-Csv "W:\test\search_results\$name.csv" -NoType
これは私がCSVではなく$result
にエクスポートした場合$filter
が含まれているものです:
FullName \\omega.dce-eir.net\etm\ETMWinHeadPROD\CRA_WEB_UA\cra_htdocs\bt\fq-eng.html \\omega.dce-eir.net\etm\ETMWinHeadPROD\CRA_WEB_UA\cra_htdocs\bt\ll_fq-eng.html \\omega.dce-eir.net\etm\ETMWinHeadPROD\CRA_WEB_UA\cra_htdocs\bt\menu-eng.html
実行しているとき、私はこのエラーを取得しています私のコード:
ForEach-Object : Cannot convert 'System.Object[]' to the type 'System.Management.Automation.ScriptBlock' required by parameter 'Process'. Specified method is not supported. At C:\Tools\menu.ps1:41 char:37 + $result = ForEach-Object <<<< $filter { + CategoryInfo : InvalidArgument: (:) [ForEach-Object], ParameterBindingException + FullyQualifiedErrorId : CannotConvertArgument,Microsoft.PowerShell.Commands.ForEachObjectCommand
このスクリpt?必要なのは、CSVにリストされているファイルの検索文字列です。
それでした。ありがとう! – JonYork