PowerShell Protokolldatei erstellen
In diesem PowerShell-Lernprogramm wird erläutert, wie Sie eine Protokolldatei in PowerShell erstellen. Wir verwenden Protokolldateien, um Informationen während der Ausführung eines PowerShell-Skripts zu verfolgen.
Wenn Sie mit PowerShell ein wenig vertraut sind, stellen Sie möglicherweise fest, dass wir PowerShell für einfache bis komplexe und lange zeitaufwändige Aufgaben verwenden. Ihr PowerShell-Skript wird möglicherweise auch automatisch über einen Scheduler ausgeführt.
Daher ist es sehr notwendig, dass wir Informationen anheften, während das Skript ausgeführt wird und wenn wir Protokolldateien verwenden. Wir können Informationen, Fehler, Warnungen usw. in einer Protokolldatei in PowerShell verfolgen.
Sie sollten jedoch keine sensiblen Informationen oder persönlichen Daten wie Passwörter, Kreditkartennummern, E-Mail-Adressen, Sozialversicherungsnummern usw. protokollieren.
Sehen wir uns also verschiedene Möglichkeiten an, eine Protokolldatei in PowerShell zu erstellen.
PowerShell-Protokolldatei erstellen
Wir werden hier verschiedene Ansätze zum Schreiben von Informationen in eine Protokolldatei sowie zum Erstellen einer PowerShell-Protokolldatei diskutieren.
Ich verwende PowerShell ISE immer zum Schreiben, Testen und Debuggen von PowerShell-Skripten. Sie können auch den Visual Studio-Code verwenden.
Öffnen Sie PowerShell ISE im Administratormodus (Rechtsklick und Als Administrator ausführen) und gehen Sie die Beispiele Schritt für Schritt durch.
Beispiel 1: PowerShell einfache Protokolldatei erstellen
Dies ist eine der einfachsten Möglichkeiten, eine Nachricht in eine Protokolldatei in PowerShell zu schreiben.
$logfilepath="D:\Log.txt"$logmessage="This is a test message for the PowerShell create log file"$logmessage >> $logfilepath
Das obige PowerShell-Skript schreibt die Nachricht in das Protokoll.txt-Datei, die im Laufwerk D angezeigt wird.
Wenn die Datei zuvor angezeigt wird, wird die Nachricht weiterhin wie folgt angehängt. Und wenn das Protokoll.wenn die TXT-Datei nicht im Laufwerk D angezeigt wird, wird zuerst die Protokolldatei erstellt und dann die Nachricht geschrieben.
Beispiel 2: Erstellen Sie eine einfache Protokolldatei in PowerShell
Im folgenden Beispiel wird überprüft, ob die Protokolldatei bereits angezeigt wird.
Wir können den PowerShell-Befehl Test-Path verwenden, um zu überprüfen, ob eine Datei im Dateipfad vorhanden ist oder nicht.
Beispiel-3:
Wir können auch das Datum und die Uhrzeit verwenden, wenn die Nachricht mit PowerShell Get-Date protokolliert wird.
Das obige PowerShell-Skript protokolliert die Nachricht mit dem aktuellen Datum und der aktuellen Uhrzeit.
Beispiel 4:
Wenn Sie mehrere Protokollnachrichten verfolgen möchten, können Sie eine PowerShell-Funktion wie folgt erstellen:
Das obige PowerShell-Skript überprüft, ob die Protokolldatei im Pfad vorhanden ist. Und dann wird es 3 mal die Funktion aufrufen, um die Nachrichten in die PowerShell-Protokolldatei zu schreiben.
Beispiel-5:
Unten finden Sie ein PowerShell-Skript, in dem wir die Add-content PowerShell-Cmdlets verwendet haben, um die Nachricht an a zu schreiben .Protokolldatei.
Eher mit einem .txt-Datei, die meisten Male schreiben wir die Erweiterung als .Protokolldatei.
Beispiel 6:
Wir können auch Start-Transcript PowerShell-Cmdlets verwenden, um in eine Protokolldatei zu schreiben. Dies schreibt nicht nur die Protokollnachricht, sondern verfolgt auch andere Informationen wie Benutzername, Computer, Host-Anwendung, PSVersion, CLRVersion usw.
$logfilepath="D:\Log.log"Start-Transcript -Path $logfilepathWrite-Host "This is a message"Stop-Transcript
Die Datei sieht wie folgt aus:
PowerShell-Protokollebenen
In den Write- PowerShell-Cmdlets bietet PowerShell verschiedene Arten von Protokollebenen wie:
- Write-Verbose
- Write-Debug
- Write-Information
- Write-Warning
- Write-Error
PowerShell Erstellen Sie eine Protokolldatei mit Datum
Lassen Sie uns nun sehen, wie Sie eine Protokolldatei mit Datum in PowerShell erstellen. Grundsätzlich wird die Datei mit dem Dateinamen ab dem heutigen Datum erstellt.
Das Skript prüft, ob eine Datei mit dem Namen als heutiges Datum existiert, wenn die Datei existiert, dann wird es zuerst die Datei löschen, sonst wird es die Datei erstellen und die Protokollnachricht hineinschreiben.
So können wir eine Protokolldatei mit Datum in PowerShell erstellen.
So können wir in PowerShell eine tägliche Protokolldatei erstellen, die am heutigen Datum erstellt wird.
PowerShell Erstellen Sie eine Protokolldatei mit datetime
Jetzt können wir sehen, wie Sie mit PowerShell eine Protokolldatei mit Datetime erstellen.
Wir müssen das Get-Date PowerShell-Cmdlet formatieren, um das aktuelle Datum und die aktuelle Uhrzeit wie folgt abzurufen:
Im obigen Beispiel wird die PowerShell-Protokolldatei für den Namen als heutiges Datum und Uhrzeit erstellt.
PowerShell Protokolldatei erstellen, falls nicht vorhanden
Lassen Sie uns nun sehen, wie Sie eine Protokolldatei erstellen, falls in PowerShell nicht vorhanden.
Wir können das PowerShell-Cmdlet Test-Path verwenden, um zu überprüfen, ob die Datei im Pfad vorhanden ist oder nicht.
Und wir können New-Item PowerShell-Cmdlets verwenden, um eine Datei im Ordnerpfad zu erstellen.
Sie können die Ausgabe wie folgt sehen:
Auf diese Weise können wir eine Protokolldatei erstellen, falls diese in PowerShell nicht vorhanden ist.
PowerShell Protokolldatei mit Kopfzeilen erstellen
Lassen Sie uns nun sehen, wie Sie eine Protokolldatei mit Kopfzeilen in PowerShell erstellen. Hier werden wir eine erstellen .CSV-Datei und fügt der CSV-Datei auch Header hinzu.
Das obige PowerShell-Skript erstellt eine .csv-Datei und fügt dann zwei Header hinzu (DateAndTime und Message). Wir werden auch eine Testprotokollnachricht hinzufügen.
PowerShell Fehlerprotokolldatei erstellen
Jetzt werden wir sehen, wie Sie eine Fehlerprotokolldatei in PowerShell erstellen. Grundsätzlich verwenden wir die try-catch-Anweisung und in der catch-Anweisung protokollieren wir die Fehlermeldung in einer Protokolldatei in PowerShell.
$filename = "Log-"+ (Get-Date -Format "MM-dd-yyyy")$logfile = "D:\"+$filename+".log"try{1/0}catch{$_.Exception.Message | Out-File $logfile}
Wenn im obigen PowerShell-Skript ein Fehler in der try-Anweisung angezeigt wird, wird die Nachricht in der catch-Anweisung in der PowerShell-Fehlerprotokolldatei protokolliert.
PowerShell CSV-Protokolldatei erstellen
Auf die gleiche Weise erstellen wir .txt oder .log-Datei können wir auch erstellen .CSV-Datei in PowerShell zum Protokollieren von Informationen.
Lassen Sie uns nun sehen, wie Sie eine erstellen .CSV-Protokolldatei in PowerShell.
So erstellen Sie eine .CSV-Datei, wir müssen nur die Dateierweiterung ändern .csv.
So können wir eine CSV-Protokolldatei in PowerShell erstellen.
Verwenden Sie PowerShell Framework (PSFramework), um Informationen zu protokollieren
Sie können auch PSFramework oder PowerShell Framework verwenden, um Informationen zu protokollieren.
Um PSFramework zu verwenden, müssen Sie es zunächst installieren, indem Sie den folgenden Befehl ausführen.
Install-Module PSFramework
Mit dem PSFramework können wir mit dem Skript Write-PSFMessage in die Protokolldatei schreiben. Schauen Sie sich moe auf der PSFramwwork-Website an.
PowerShell Einfache Protokolldatei erstellen
Lassen Sie uns nun sehen, wie Sie eine einfache Protokolldatei in PowerShell erstellen. Das PowerShell-Skript erstellt eine sehr einfache Protokolldatei und protokolliert eine Textnachricht. Die Datei wird am heutigen Tag erstellt.
Die folgenden PowerShell-Tutorials können Ihnen gefallen:
- Durchlaufen eines PowerShell-Arrays
- Erstellen und Verwenden von PowerShell-ArrayList
- Erstellen eines Arrays in PowerShell aus einer CSV-Datei
- Was ist ein PowerShell-Array?
- Verwendung der PowerShell-Referenzvariablen
- Was ist eine PowerShell-Variable?
- SharePoint 2013 Sichern und Wiederherstellen mit PowerShell
- Der Begriff ‚Get-MsolUser‘ wird nicht als Name eines Cmdlets erkannt
In diesem Lernprogramm haben wir gelernt, wie Sie eine Protokolldatei in PowerShell erstellen und die folgenden Dinge:
- PowerShell-Protokolldatei erstellen
- PowerShell-Protokollebenen
- PowerShell-Protokolldatei mit Datum erstellen
- PowerShell-Protokolldatei mit Datum und Uhrzeit erstellen
- PowerShell-Protokolldatei erstellen, falls nicht vorhanden
- PowerShell-Protokolldatei mit Kopfzeilen erstellen
- PowerShell Fehlerprotokolldatei erstellen
- PowerShell CSV-Protokolldatei erstellen
- Verwenden Sie das PowerShell-Framework (PSFramework), um Informationen zu protokollieren
- PowerShell einfache Protokolldatei erstellen
Ich bin Bijay aus Odisha, Indien. Derzeit arbeite ich in meinem eigenen Venture TSInfo Technologies in Bangalore, Indien. Ich bin Microsoft Office Server und Services (SharePoint) MVP (5 mal). Ich arbeite in SharePoint 2016/2013/2010, SharePoint Online Office 365 usw. Schauen Sie sich mein MVP-Profil an.. Ich betreibe auch beliebte SharePoint-Website EnjoySharePoint.com