- - Πώς να πάρετε το ιστορικό εντολών PowerShell στα Windows 10

Πώς να αποκτήσετε το ιστορικό εντολών PowerShell στα Windows 10

Το PowerShell στα Windows 10 μπορεί να σας δώσει ένα ιστορικόαπό κάθε εντολή που εκτελέσατε στην τρέχουσα συνεδρία, ωστόσο, για πολλούς χρήστες αυτό δεν αρκεί. Χρειάζονται ένα ιστορικό εντολών που εκτελούνται σε όλες τις περιόδους σύνδεσης. Αν χρειάζεται να πάρετε το ιστορικό εντολών του PowerShell και το ιστορικό για την τρέχουσα περίοδο μόνο δεν κάνει το τέχνασμα, υπάρχει ένα σενάριο και ένα αρχείο καταγραφής που μπορεί να σας βοηθήσει.

Ιστορικό εντολών Τρέχουσα περίοδος λειτουργίας

Εάν εκτελείτε το PowerShell 5, μπορείτε να πάρετε το ιστορικό εντολών για την τρέχουσα περίοδο λειτουργίας εκτελώντας την ακόλουθη εντολή.

Get-History

Από προεπιλογή, το PowerShell μπορεί να αποθηκεύσει έως και 50 εντολέςαλλά μπορείτε να το αλλάξετε για να εξοικονομήσετε περισσότερα. Ανοίξτε το PowerShell και κάντε δεξί κλικ στη γραμμή τίτλου. Από το μενού περιβάλλοντος, μεταβείτε στις Ιδιότητες. Στο παράθυρο Ιδιότητες, μεταβείτε στην καρτέλα Επιλογές. Θα δείτε μια ενότητα ιστορικού εντολών όπου η προεπιλογή είναι 50. Αλλάξτε την σε υψηλότερη τιμή.

Εγγραφή ιστορικού PowerShell

Για να δείτε το αρχείο καταγραφής ιστορικού, πρέπει πρώτα να εγκαταστήσετε την υπομονάδα PSReadLine με την ακόλουθη εντολή.

Install-Module PSReadLine

Στη συνέχεια, εκτελέστε την ακόλουθη εντολή και θα επιστρέψει μια θέση αρχείου. Το αρχείο σε αυτή τη θέση θα σας δώσει ένα πλήρες ιστορικό κάθε εντολής που εκτελέσατε στο PowerShell.

(Get-PSReadlineOption).HistorySavePath

Ιστορικό εντολών PowerShell διασταυρώσεων

Αυτό είναι ένα κομμάτι μιας μακράς διαδικασίας αλλά αξίζει τον κόπο. Αυτή η λύση προέρχεται από την Intel. Ανοίξτε πρώτα την ακόλουθη θέση και ελέγξτε αν υπάρχει ένα αρχείο με όνομα Microsoft.PowerShell_profile.ps1 σε αυτή τη θέση.

C:Users<username>DocumentsWindowsPowerShell

Αν δεν υπάρχει αρχείο εκεί, ανοίξτε το PowerShell και τρέξτετην ακόλουθη εντολή. Θα ανοίξει το αρχείο Προφίλ σας στο Σημειωματάριο, αλλά το αρχείο αυτό δεν υπάρχει και το PowerShell θα σας πει τόσο πολύ και θα σας ρωτήσει εάν θέλετε να το δημιουργήσετε. Αφήστε το να δημιουργήσει το αρχείο.

notepad $Profile

Κλείστε το αρχείο σημειωματάριου που ανοίγει. Στο PowerShell, εκτελέστε αυτήν την εντολή για να βεβαιωθείτε ότι εκτελείτε το PowerShell 5.

$PSVersionTable.PSVersion

Στη συνέχεια, ορίστε την πολιτική εκτέλεσης σε RemoteSigned με την ακόλουθη εντολή.

set-executionpolicy remotesigned

Στη συνέχεια, πρέπει να εγκαταστήσετε τα αρχεία PsUrl καιΥπομονάδες PSReadline. Μπορείτε να τα εγκαταστήσετε με την ακόλουθη εντολή, αλλά εάν λάβετε ένα σφάλμα, απλώς τα εγκαταστήσετε με το χέρι από τη διαδικασία που περιγράφεται στις συνδεδεμένες σελίδες ή προσπαθήστε να προσθέσετε το αποθετήριο ως αξιόπιστο αποθετήριο και στη συνέχεια να εκτελέσετε ξανά την εντολή.

install-module PsUrl
install-module PSReadline

Τώρα που έχουν εγκατασταθεί αυτά τα στοιχεία, ανοίξτε αυτό το αρχείο.

C:Users<username>DocumentsWindowsPowerShellMicrosoft.PowerShell_profile.ps1

Επικολλήστε τα παρακάτω μέσα σε αυτό το αρχείο και αποθηκεύστε το.

$HistoryFilePath = Join-Path ([Environment]::GetFolderPath("UserProfile")) .ps_history
Register-EngineEvent PowerShell.Exiting -Action { Get-History | Export-Clixml $HistoryFilePath } | out-null
if (Test-path $HistoryFilePath) { Import-Clixml $HistoryFilePath | Add-History }
# if you don"t already have this configured...
Set-PSReadlineKeyHandler -Key UpArrow -Function HistorySearchBackward
Set-PSReadlineKeyHandler -Key DownArrow -Function HistorySearchForward

Για να δείτε το ιστορικό εντολών στο PowerShell,πρέπει να εκτελέσετε την εντολή Get-History, ωστόσο υπάρχει ένα πολύ σημαντικό βήμα για να βεβαιωθείτε ότι η ιστορία σας αποθηκεύεται. Δεν μπορείτε να κλείσετε το PowerShell κάνοντας κλικ στο κουμπί Κλείσιμο. Αντ 'αυτού πρέπει πάντα να το κλείσετε με την εντολή εξόδου.

Μπορείτε να χρησιμοποιήσετε τα πλήκτρα βέλους πάνω και κάτω για να μετακινηθείτε στις προηγούμενες εντολές.

Σχόλια