Skip to main content

Ping Ergebnis in CSV schreiben

Einleitung

Mit diesem kleinen Skript kann man in eine CSV Datei schreiben lassen, ob ein Ping erfolgreich durchgegangen ist oder nicht. Es wird dann immer die Uhrzeit und das Datum dazu geschriebengeschrieben, um nachzuverfolgennachzuverfolgen, wann das genau war.

Du kannst in dem Skript festlegenfestlegen, in welchen Abschnitten die Pings durchgefüdurchgeführt werden, wie viele DurchläDurchläufe durchgefüdurchgeführt werden sollen, und unter welchem Pfad die Log DateiLogdatei liegen soll und wie diese heißheißt.

Die Datei wird bei jeder DurchfüDurchführung gelögelöscht und neu erstellterstellt, damit keine Altlasten zur Verwirrung sorgen können.

Code

$path = "C:\logs"
$filename = "result.csv"
$destAddress = "srv-windows1"

    Write-Host("===========================") -ForegroundColor Green
    Write-Host("Starte Connection Tester") -ForegroundColor Green
    Write-Host("Ziel: " + $zielAdresse) -ForegroundColor Green
    Write-Host("Entwickelt von: Phillip Unzen") -ForegroundColor Green
    Write-Host("===========================") -ForegroundColor Green
    Write-Host(" ")

    if(Test-Path -Path ($path + "\" + $filename))
    {
        Remove-Item -Path ($path + "\" + $filename)
        New-Item -Path $path -Name $filename -ItemType File 
    } else {
        New-Item -Path $path -Name $filename -ItemType File
    }

for($i = 0; $i -le 10000; $i++)
{
    if(Test-Connection -ComputerName $destAddress -Count 1)
    {
        Write-Host("Ping erfolgreich!") -ForegroundColor Green
        $str = (Get-Date).ToString("dd.MM.yyyy") + ";" + (Get-Date).ToString("HH:mm:ss") + ";" + "Erfolgreich"

    } else {
        Write-Host("Keine Verbindung") -ForegroundColor Red
        $str = (Get-Date).ToString("dd.MM.yyyy") + ";" + (Get-Date).ToString("HH:mm:ss") + ";" + "Fehler"
    }

    $str | Out-File -FilePath ($path + "\" + $filename) -Encoding utf8 -Append

    Start-Sleep 2
}