2012-04-12 1013 views
1

次のコードを実行すると、「System.Object []」を「System.String」型に変換できませんというメッセージが表示されます。 "どのようにイベントログリストをget-eventlogに渡すのですか?Powershell: 'System.Object []'を 'System.String'型に変換できません

$EventLogList = Get-EventLog | Select-Object -ExpandProperty log 
Get-evenlog -log $eventloglist 

のGet-EventLogに: 'System.Objectの[]は、' タイプ に変換することはできませんが、パラメータで必要とされる '可能System.String' 'LOGNAME'。

あなたの助けが

+0

は、私はあなたのような何かをしたいとします。 'evenlog'ではなく' eventlog'でなければなりません。 –

+0

あなたの意図が何であるかは明確ではありません。あなたは何を達成しようとしていますか? –

+0

ああ、申し訳ありません。すべての従来のログからすべてのイベントエントリを取得したい例えばアプリケーション、ハードウェアイベント、Internet Explorer、キーマネージメントサービス、セキュリティ、システムect – resolver101

答えて

3

LogNameGet-EventLogに必須パラメータであり、あなたはあなたが-listでリストをやろうとしている場合を除き、それを供給する必要が認識されます。また、配列を渡すため、文字列が必要で、2行目にエラーが発生しています。

それ以外にも、あなたがそのステートメントで何をしようとしているのかは明らかではありません。あなたは2行目にタイプミスがあり

get-eventlog -list | %{ get-eventlog -log $_.log } 
+0

ありがとうございました。アレイは私に問題を引き起こしていました。 foreachを作成して、各ログを個別にループします。 – resolver101

関連する問題