2012-04-12 359 views
1

當我運行以下代碼時,我收到消息「無法將'System.Object []'轉換爲類型'System.String' 」。我如何將事件日誌列表傳回給事件日誌?Powershell:無法將'System.Object []'轉換爲'System.String'類型

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

獲取,事件日誌:無法將 'System.Object的[]' 的類型 'System.String' 要求參數 'LOGNAME'。

您的幫助表示讚賞

+0

你必須在第二行一個錯字。它應該是'eventlog'而不是'evenlog'。 – 2012-04-12 18:31:32

+0

目前還不清楚你的意圖。你想要達到什麼目的? – 2012-04-12 18:34:54

+0

啊對不起。我想從所有傳統日誌中檢索所有事件條目。例如應用程序,硬件事件,Internet Explorer,密鑰管理服務,安全,系統等 – resolver101 2012-04-12 18:46:27

回答

3

LogName是一個強制性的參數Get-EventLog,你必須提供它,除非你正在嘗試做一個列表與-list。此外,它期望一個字符串和第二行是因爲你正在傳遞一個數組給出的錯誤。

除此之外,目前還不清楚你對這些陳述所做的嘗試。

我想你想要的東西,如:

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

謝謝。陣列造成了我的問題。我創建了一個foreach來逐個遍歷每個日誌。 – resolver101 2012-04-12 19:11:27

相關問題