[LINUX] So verfolgen Sie die Arbeit mit Powershell

Was als Arbeitsaufzeichnung zu halten

Wenn Sie arbeiten, werden Sie möglicherweise nach einer Arbeitsaufzeichnung gefragt. Manchmal als Beweise oder Spuren bezeichnet, ist es wichtig zu verfolgen, was Sie getan haben und was passiert ist. Bewahren Sie bei der Arbeit mit Powershell die folgenden zwei Aufzeichnungen auf.

Befehlsausgabe aufzeichnen

Eine Aufzeichnung dessen, was ausgegeben wurde, als der Befehl ausgeführt wurde. Es gibt verschiedene Möglichkeiten, die Ausgabe mit Powerehll aufzuzeichnen.

Darüber hinaus gibt es eine Methode zum Auswählen der auf dem Bildschirm ausgegebenen Inhalte und zum Speichern durch Kopieren. Die Erklärung wird jedoch weggelassen.

Befehlsverlauf

Verlauf der ausgeführten Befehle. So verfolgen Sie die Befehlsausführung in Powershell

-Kopierverlaufsdatei ・ Get-History

Aufzeichnen der Befehlsausgabe

Speichern Sie die Befehlsausgabe mit Umleitung in Text

Verwenden Sie> (Umleiten), um den ausgeführten Inhalt so wie er ist als Text auszugeben. Orthodoxe Methode.

[Befehl] > [Textdatei].txt

Geben Sie die Textdatei an, die ausgegeben werden soll, indem Sie nach dem Befehl> hinzufügen.

PS > echo "Uni" > test.txt
PS > Get-Content test.txt
Uni

Die umgeleitete Textdatei wird überschrieben. Wenn Sie es hinzufügen möchten, leiten Sie mit >> um.

PS > echo "Uni" >> test.txt

Bei Verwendung der Umleitung wird das Ergebnis der Ausführung des Befehls nicht auf dem Bildschirm angezeigt. Wenn Sie es auf dem Bildschirm anzeigen möchten, verwenden Sie Tee-Object.

PS > echo "Uni" | Tee-Object test.txt
Uni
PS > Get-Content test.txt
Uni

Notieren Sie den auf dem Bildschirm ausgegebenen Inhalt in einer Datei

Führen Sie die folgenden Befehle aus, wenn Sie die Textaufzeichnung starten und beenden.

Start-Transcript → Aufnahme starten Stop-Transcript → Ende der Aufnahme

** Starte die Aufnahme **

> Start-Transcript
Das Transkript wurde gestartet. Ausgabedatei: [Aktueller Pfad]\PowerShell_transcript.HORUS.Wm+ZpDyv.[Datum (und Uhrzeit].txt

Die Aufzeichnung beginnt, nachdem der Befehl ausgeführt wurde.

** Ende der Aufnahme **

> Stop-Transcript
Das Transkript wurde gestoppt. Ausgabedatei: [Aktueller Pfad]\Documents\PowerShell_transcript.HORUS.Wm+ZpDyv.[Datum (und Uhrzeit].txt

Die Aufzeichnung wird gestoppt, nachdem der Befehl ausgeführt wurde. In der Kopfzeile der gespeicherten Textdatei werden verschiedene Informationen aufgezeichnet. Der Header der Ausgabedatei lautet wie folgt.

** Ausgabeinhalt **

**********************
Starten Sie das Windows PowerShell-Transkript
Startzeit: 20200111180312
Nutzername: [Nutzer]
RunAs-Benutzer: [Nutzer]
Konfigurationsname: 
Computer: [Hostname](Microsoft Windows NT 10.0.18362.)
Host-Anwendung: C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe
Prozess ID: 13508
PSVersion: 5.1.18362.145
PSEdition: Desktop
PSCompatibleVersions: 1.0, 2.0, 3.0, 4.0, 5.0, 5.1.18362.145
BuildVersion: 10.0.18362.145
CLRVersion: 4.0.30319.42000
WSManStackVersion: 3.0
PSRemotingProtocolVersion: 2.3
SerializationVersion: 1.1.0.1
**********************

Informationen wie Startzeit, Endzeit und Hostname der Aufzeichnung werden automatisch eingegeben.

Speichern Sie das Ergebnis der Befehlsausführung in einer CSV-Datei

Leiten Sie die Ausgabe des Befehls an Export-Csv weiter. Die Ausgabe wird in der an die Option angehängten Datei gespeichert.

<Befehl> | Export-Csv <Dateiname>.csv

Da die Ausgabe auf dem Bildschirm in CSV formatiert ist, werden die nicht angezeigten Daten nicht gespeichert. Die Ausgabe-CSV kann wie in Excel oder ähnlichem gelesen werden.

Speichern Sie das Ergebnis der Befehlsausführung in einer XML-Datei

Leiten Sie die Ausgabe des Befehls an Export-Clixml weiter. Die Ausgabe wird in der an die Option angehängten Datei gespeichert.

<Befehl> | Export-Clixml <Dateiname>.xml

Importieren Sie die Ausgabe der XML-Datei mit dem folgenden Befehl.

Import-Clixml <Dateiname>.xml

Nach dem Import sehen Sie die exportierte Ausgabe. Fügen Sie die Ausgabe in eine Variable ein oder verarbeiten Sie sie durch eine Pipe, um sie zu verwenden.

Speichern Sie den Befehlsausführungsverlauf

Datei, in der der Ausführungsverlauf aufgezeichnet ist

Wenn Sie einen Befehl in Powershell ausführen, wird der ausgeführte Befehl als Verlauf in eine Textdatei ausgegeben und gespeichert. Sie können den Speicherort der gespeicherten Datei überprüfen, indem Sie den folgenden Befehl ausführen.

(Get-PSReadLineOption).HistorySavePath

Es scheint auch, dass Sie den Ausgabeort mit dem folgenden Befehl ändern können.

 Set-PSReadLineOption -HistorySavePath [Ändern Sie den Zieldateipfad]

Sobald Sie die Eingabeaufforderung schließen, wird sie jedoch auf den Standardspeicherort zurückgesetzt.

Verlauf mit Befehl anzeigen

Sie können den Ausführungsverlauf des Befehls mit dem Befehl ** Get-history ** anzeigen. 。

PS C:\Users\Main> Get-History

  Id CommandLine
  -- -----------
   1 Get-History
   2 Get-History

Wenn Sie über Eigenschaften verfügen, können Sie auch den Befehlsausführungsverlauf, die Ausführungszeit und die Endzeitdaten anzeigen.

Artikel Inhalt
ExecutionStatus Ergebnis der Befehlsausführung
StartExecutionTime Startzeit für die Befehlsausführung
EndExecutionTime Endzeit der Befehlsausführung

Wenn alle Eigenschaften mit Select-Object * angezeigt werden, werden diese Informationen angezeigt.

PS C:\Users\Main> Get-History | Select-Object *


Id                 : 1
CommandLine        : Get-History | Select-Object *
ExecutionStatus    : Completed
StartExecutionTime : 2020/01/16 19:54:41
EndExecutionTime   : 2020/01/16 19:54:41

Id                 : 2
CommandLine        : Get-History | Select-Object *
ExecutionStatus    : Completed
StartExecutionTime : 2020/01/16 19:54:43
EndExecutionTime   : 2020/01/16 19:54:43

Mit Powershell können Sie den Befehlsausführungsverlauf und den Ausgabeverlauf kombinieren, um zuverlässig aufzuzeichnen, wann und welche Daten erfasst wurden.

Recommended Posts

So verfolgen Sie die Arbeit mit Powershell
So arbeiten Sie mit BigQuery in Python
Zusammenfassung zum Importieren von Dateien in Python 3
Zusammenfassung der Verwendung von MNIST mit Python
So ermitteln Sie die Anzahl der Stellen in Python
So zeigen Sie mehrere Bilder einer Galaxie in Kacheln an
[Arbeitseffizienz] So ändern Sie Dateinamen im Stapel mit Python
Wie man in Python entwickelt
Wie man Conda fernhält
So finden Sie die optimale Anzahl von Clustern für k-means
So entfernen Sie benutzerdefinierte Serverpiktogramme in message.content
So entwickeln Sie in einer virtuellen Python-Umgebung [Memo]
Vergleich der Verwendung von Funktionen höherer Ordnung in Python 2 und 3
So erhalten Sie eine Liste der integrierten Ausnahmen für Python
Zusammenfassung zum Schreiben von in gRPC verwendeten .proto-Dateien
So erhalten Sie einen Überblick über Ihre Daten in Pandas
Die parallele Verarbeitung der Python-Joblib funktioniert in der uWSGI-Umgebung nicht. Wie verarbeite ich parallel auf uWSGI?
Belüftung ist wichtig. Was ich getan habe, um die CO2-Konzentration im Raum aufzuzeichnen
[Python] Wie man PCA mit Python macht
Zusammenfassung der Verwendung von pandas.DataFrame.loc
Verwendung von Klassen in Theano
Wie man nüchtern mit Pandas schreibt
So sammeln Sie Bilder in Python
So aktualisieren Sie Spyder in Anaconda
Verwendung von SQLite in Python
So verwenden Sie virtualenv mit PowerShell
Zusammenfassung der Verwendung von pyenv-virtualenv
So konvertieren Sie 0,5 in 1056964608 auf einmal
Wie man CSS in Django reflektiert
Wie man Prozesse in großen Mengen abbricht
Wie man MySQL mit Python benutzt
So verpacken Sie C in Python
Verwendung von ChemSpider in Python
Verwendung von PubChem mit Python
So führen Sie TensorFlow 1.0-Code in 2.0 aus
Zusammenfassung der Verwendung von csvkit
Umgang mit Japanisch mit Python
So melden Sie sich bei Docker + NGINX an
So rufen Sie PyTorch in Julia an
So zeigen Sie eine bestimmte Dateispalte unter Linux an (awk)
So bestimmen Sie die Existenz eines Selenelements in Python
So implementieren Sie Java-Code im Hintergrund von Red Hat (Linux ONE)
Wie Sie die interne Struktur eines Objekts in Python kennen
So ändern Sie die Farbe nur der mit Tkinter gedrückten Taste
So überprüfen Sie die Speichergröße einer Variablen in Python
So überprüfen Sie die Speichergröße eines Wörterbuchs in Python
[TensorFlow 2] So überprüfen Sie den Inhalt von Tensor im Diagrammmodus
So ermitteln Sie die Scheitelpunktkoordinaten eines Features in ArcPy
Wie nutzt man maschinelles Lernen für die Arbeit? 01_ Den Zweck des maschinellen Lernens verstehen
Wie erstelle ich eine große Menge an Testdaten in MySQL? ??
Verwendung berechneter Spalten in CASTable
So beheben Sie den Fehler "Kein Kernel der Grammatik Python gefunden" in Atom
[Python] Zusammenfassung der Verwendung von Pandas
[Einführung in Python] Wie verwende ich eine Klasse in Python?
So unterdrücken Sie Anzeigefehler in matplotlib
Einführung in das maschinelle Lernen: Funktionsweise des Modells
Wie man die schöne Suppeninstanziierung beschleunigt
So ändern Sie mehrere Spalten von csv in Pandas (Unixtime-> Japan Time)