2016-07-20 1 views
0

Ich habe PowerShell-Skript und ein Teil davon zählt die Anzahl der Zeilen in einer Datei. Wenn die Datei Zeilen hat, ist es in Ordnung, aber wenn es keine Zeilen hat, zeigt es nichts im Zählwert an - ich brauche es, um Null anzuzeigen.Keine Nullwerte anzeigen

#Count the number of lines that we have so far for KNOWN error_4 types 
if (Test-Path $path\known_error_type_4.log) { 
    $error_4_measure = Get-Content $path\known_error_type_4.log | Measure-Object 
    $error_4_count = @($error_4_measure).Count 
    echo "Known Error_4 Type Line count is : ${error_4_count} lines" 

Ich habe versucht, legte es mit @() wie das in ein Array gesetzt haben sollte etwas zurückgeben, aber ich vermute, dass ich etwas falsch gemacht habe, aber ich kann es nicht sehen.

+0

Verwenden 'Measure-Object -Line' und' $ error_4_measure.Lines' die Anzahl der nicht-leer zu bekommen Zeilen in der Datei. Siehe [diese verwandte Frage] (http://stackoverflow.com/q/13440389/1630171). –

Antwort

2

Setzen Sie den Array subexpression Operator @() um die Get-Content Anweisung statt und überprüfen Sie die Count Eigenschaft:

$error_4_count = @(Get-Content $path\known_error_type_4.log).Count