2016-05-23 20 views
0

コマンドラインで入力した内容を収集するために、powershellプロファイルに以下を追加しました。Powershell、コマンドラインとイベントログ

$LogCommandHealthEvent = $true 
$LogCommandLifeCycleEvent = $true 

しかし、どのように私はここから情報を得るか、私はPowerShellコンソールにコマンドラインで入力しているものを探しています -

$event = Get-WinEvent -FilterHashtable @{logname=’Windows Powershell'; id=500} -MaxEvents 1 
$Event.Message 

は私に情報を与えるが、私が望むすべてがあります最後の行 "CommandLine"

Details: 
    NewCommandState=Started 

    SequenceNumber=313 

    HostName=Windows PowerShell ISE Host 
    HostVersion=4.0 
    HostId=6fda55e7-4366-4719-ad59-8962eda1521f 
    EngineVersion=4.0 
    RunspaceId=e82c8130-1c67-4d61-b513-9ac55bc148ba 
    PipelineId=52 
    CommandName=Get-WinEvent 
    CommandType=Cmdlet 
    ScriptName= 
    CommandPath= 
    CommandLine=$event = Get-WinEvent -FilterHashtable @{logname=’Windows Powershell'; id=500} -MaxEvents 1 

ご意見はありますか?

答えて

1

Messageプロパティが1複数行の文字列ですが、私は改行でそれを分割し、最後のいずれかを選択します:

$Event.Message -split "`r?`n" |Select-Object -Last 1 
+0

おかげマティアス!あなたの答えの結果を配列に追加することについての私からのフォローアップの質問があるかもしれません。イベントIDと日付とともに表示されます。しかし、私はそれに亀裂をかけるだろう。 – Dpitt1968

関連する問題