2016-06-30 29 views
0

PowerShellでテキストボックスに出力するテキストの書式を設定しようとしています。現在、テキストが行く:PowerShellテキストボックスの書式設定

最終リブートCheckDaysを実行:5時間:4Minutes:5時間:4分:最後のリブートの確認に

日数を実行

:3RebootRecommended

が、私はそれがフォーマットしたいですここで

を推奨3

のリブートは私のコードです:

Function global:LastReboot_Run 
     { 

      $logstring = "Running Last Reboot Check" -split "`n" 
      Add-content C:\Temp\PMCS_TicketLogs.Log -value $logstring 
      $logs_TextBox.Text += "`n$logstring" 

      $os = Get-WmiObject win32_operatingsystem 
      $uptime = (Get-Date) - ($os.ConvertToDateTime($os.lastbootuptime)) 
      $Display = "" + $Uptime.Days + " days, " + $Uptime.Hours + " hours, " + $Uptime.Minutes + " minutes" 
      $logs_TextBox.Text += "`n$Display" 

      $FiveDaysAgo = (get-date).addDays(-7) 
      #if([dateTime]$FiveDaysAgo = (get-date).addDays(-5)) 
      if ($FiveDaysAgo -eq $true) 
      { 
       $logs_TextBox.Text += "`nReboot Recommended" 

      } 
      else 
      { 
       $logs_TextBox.Text += "`nReboot - Good" 
      } 

      $logstring = "Date Since Last Reboot = " + $Display 
      Add-content C:\Temp\PMCS_TicketLogs.Log -value $logstring 
      $logs_TextBox.Text += "`n$logstring" 
      $logstring = "Last Reboot Check Finished" 
      Add-content C:\Temp\PMCS_TicketLogs.Log -value $logstring 
      $logs_TextBox.Text += "`n$logstring" 
     } 

     LastReboot_Run 

私はn method and the -split " n "メソッドを試しましたが、どれも動作していないようです。どんな助けもありがとう。ありがとう!

答えて

1

[System.Environment]::NewLineを使用して、TextBox.Textに改行を挿入することができます。 TextBoxにはMultilineプロパティが$trueに設定されている必要があります。

あなたは簡単に使用する変数でこれを保存することができます。

$newline = [System.Environment]::NewLine 

$logstring = "$newline$newline`Last Reboot Check Finished" 

私はそれは少し醜いコードが賢明です同意するが、それはあなたが望むん。

backtick-nは機能しませんが、理由を説明できません。

FYIの-split演算子は、一部の文字列を切り取る(分割する)ために使用されます。

関連する問題