やりたいこと
以下の様な操作を行いたいのですが、どうすればいいでしょうか。
1. 連想配列作成 (なんでも構わないのですが、先に置換する項目を定義しておきたい) 2. カスタムオブジェクトを作成し、特定の文字列を取得 3. 何かしらの処理で、特定の文字列にマッチしたものは配列のデータと比較し、対応する文字列に置換
コード
イベントログの取得を例に具体的に記載すると、以下の様なコードを使用しています。
$Temporary = Get-WinEvent -ListLog Application,Security,Setup,System,ForwardedEvents if ($Temporary.Length -eq $null) { $Length = 0 } ` else { $Length = ($Temporary.Length - 1) } $EventLog = (0..$Length) | Foreach-Object { New-Object Object | Add-Member NoteProperty 'フルネーム' $Temporary.LogName[$_] -PassThru | Add-Member NoteProperty 'ログモード' $Temporary.LogMode[$_] -PassThru } $EventLog | Format-Table -AutoSize
出力
ですが、出力形式は以下の様になってしまいます。
フルネーム ログモード ---------- ---------- Application Retain Security Circular Setup Circular System Circular ForwardedEvents Circular
WEBUI で確認した場合には、以下の様になっている為、取得した文字列を分かりやすく置換したいと思っています。
・Circular → "必要に応じてイベントを上書きする" ・AutoBackup → "イベントを上書きしないでログをアーカイブする" ・Retain → "イベントを上書きしない"
理想
以下の様な出力形式が理想です。
フルネーム ログモード ---------- ---------- Application イベントを上書きしない Security 必要に応じてイベントを上書きする Setup 必要に応じてイベントを上書きする System 必要に応じてイベントを上書きする ForwardedEvents 必要に応じてイベントを上書きする
どなたかご教授下さい。
宜しくお願い致します。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/07/12 15:21