私はCSVにエクスポートしたい複数の大きなログファイルを持っています。まず、日付とイベントの2つの部分を分割したいだけです。私が持っている問題は、すべての行が日付で始まるわけではないということです。複数行のテキストをpowershellで解析し、csvにエクスポート
ここにはログのサンプルチャンクがあります。日付/時刻は常に23文字です。残りは、ログとイベントの説明によって異なります。
私はExcelでこのように見えるように最終的な結果をしたいと思います。
ここで私はこれまで試したものですが、ただ、各行の最初の23個の文字を返します。
$content = Get-Content myfile.log -TotalCount 50
for($i = 0; $i -lt $content.Length; $i++) {
$a = $content[$i].ToCharArray()
$b = ([string]$a[0..23]).replace(" ","")
Write-Host $b }
あなたはテキストでログの一部を投稿できるので、私は何か – ArcSet
2017年9月4日12試すことができますしてください:31:11.343 \t一般\t BOECD :: PROCESSSTARTTIME: ワード:長さ3 [0917 1204 3029] ヘックスを:長さ6 [17 09 04 12 29 30] 。 \tディスプレイ:偽\t 2017年9月4日12:31:11.479 \t一般\t MelsecIoWrapper:スキャンが終了:デバイス:1、ScanStart:2017年9月4日12時31分10秒PM \tディスプレイ:偽\t 2017から09を-04 12:31:11.705 \t一般\t BOECD :: ProcessEndTime: 語長:3 0917 1204 0931 16進数:17 09 04 12 31 09 。 \tディスプレイ:偽\t 2017年9月4日12:31:13.082 \t一般\t BOECD :: DVデータ: –
注:実際のログファイルでは、日付は常に上の写真のような行を開始します。私はサンプルを貼り付けたときに、すべてをまとめました。 –