2017-07-14 5 views
0

私はoutput.xmlに値をダンプするpowershellコマンドを取得しようとしています。まずユーザーから値が要求され、その値のアプリケーションログが解析され、結果がoutput.xmlに返されます。私はまた、日付のタイムスタンプで始まりをタグ付けしたいと思いますが、それを理解することはできませんでした。私はどこにそれを作るために、コードのこの部分を入れて、正確に理解していないと思いpowershellはファイルの先頭から日付の時刻を追加します

read-host (Get-Date).tostring("dd-MM-yyyy-hh-mm-ss") 

:これは私が構文解析を達成するために出ている、と私はいくつかの他の方法を使用しようとしているものです作業。私のスクリプト全体はこのように見えます。

$value = read-host "Enter your search value" 
Get-WinEvent -Logname application -EA silentlycontinue | ?{$_.LevelDisplayName -eq "Error" -or $_.LevelDisplayName -eq "Warning"} | Out-File '$output.xml' -Append 
+0

使用 '' File'アウトの代わりに、あなたの 'output.xml'ファイルは実際には有効ではないことに注意してください。 –

答えて

2

使用Out-Fileは同様に、ファイルの最初の行(複数可)を書くために:

$value = Read-Host "Enter your search value" 
"# $(Get-Date -Format 'dd-MM-yyyy-hh-mm-ss')" |Out-File output.log 
"# User $($env:USERNAME) supplied the following search term '$value'" |Out-File output.log -Append 
Get-WinEvent -Logname application -EA silentlycontinue | ?{$_.LevelDisplayName -eq "Error" -or $_.LevelDisplayName -eq "Warning"} | Out-File output.log -Append 
+0

ありがとう、それはまさに私が探していたものでした。 –

+1

@GregWようこそ。問題が解決した場合は、左側のチェックマークをクリックして回答を「受け入れ」にしてください –

0

あなたが探しているのは、データである最初の行だけです。

(Get-Date).tostring("dd-MM-yyyy-hh-mm-ss") | Out-File .\output.xml 

日付の後に行を追加する場合は、-Appendを必ず使用してください。

+0

私は文法の中で追加をしています。私は日付部分に日付部分を入れることができる場所を理解したかっただけです/タイムスタンプを各実行中に収集されたデータの先頭に追加します。 –

0

あなたの書き込み方法への簡単な編集:

Out-File "$(Get-Date -UFormat '%Y-%m-%d-%H-%M-%S-')$output.xml" -Append 
関連する問題