PowerShell sur Windows 10 peut vous donner un historiqueCependant, pour de nombreux utilisateurs, cela ne suffit pas. Ils ont besoin d'un historique des commandes exécutées au cours des sessions. Si vous devez obtenir l'historique des commandes PowerShell et que l'historique de la session en cours ne suffit pas, il existe un script et un fichier journal pouvant vous aider.
Historique des commandes Session en cours
Si vous exécutez PowerShell 5, vous pouvez obtenir l’historique des commandes de la session en cours en exécutant la commande suivante.
Get-History
Par défaut, PowerShell peut enregistrer jusqu'à 50 commandes.mais vous pouvez le changer pour économiser plus. Ouvrez PowerShell et cliquez avec le bouton droit sur la barre de titre. Dans le menu contextuel, allez à Propriétés. Dans la fenêtre Propriétés, accédez à l'onglet Options. Vous verrez une section Historique des commandes où la valeur par défaut est 50. Changez-la en une valeur plus élevée.
Historique de PowerShell
Pour afficher l'historique, vous devez d'abord installer le module PSReadLine à l'aide de la commande suivante:
Install-Module PSReadLine
Ensuite, exécutez la commande suivante et il retournera un emplacement de fichier. Le fichier situé à cet emplacement vous fournira un historique complet de chaque commande exécutée dans PowerShell.
(Get-PSReadlineOption).HistorySavePath
Historique des commandes PowerShell intersessions
C’est un peu long, mais cela en vaut la peine. Cette solution vient d'Intel. Commencez par ouvrir l'emplacement suivant et vérifiez s'il existe un fichier nommé Microsoft.PowerShell_profile.ps1 à cet emplacement.
C:Users<username>DocumentsWindowsPowerShell
S'il n'y a pas de fichier, ouvrez PowerShell et exécutezla commande suivante. Il ouvrira votre fichier de profil dans le Bloc-notes mais ce fichier n’existe pas et PowerShell vous le dira autant et vous demandera si vous souhaitez le créer. Permettez-lui de créer le fichier.
notepad $Profile
Fermez le fichier bloc-notes qui s'ouvre. Dans PowerShell, exécutez cette commande pour vous assurer que vous utilisez PowerShell 5.
$PSVersionTable.PSVersion
Ensuite, définissez votre stratégie d'exécution sur RemoteSigned à l'aide de la commande suivante.
set-executionpolicy remotesigned
Ensuite, vous devez installer PsUrl etModules PSReadline. Vous pouvez les installer à l'aide de la commande suivante. Toutefois, en cas d'erreur, installez-les manuellement en suivant le processus décrit dans les pages liées ou essayez d'ajouter le référentiel en tant que référentiel approuvé, puis réexécutez la commande.
install-module PsUrl
install-module PSReadline
Maintenant que ces modules ont été installés, ouvrez ce fichier.
C:Users<username>DocumentsWindowsPowerShellMicrosoft.PowerShell_profile.ps1
Collez les éléments suivants dans ce fichier et enregistrez-le.
$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
Pour afficher l'historique des commandes dans PowerShell,vous devez exécuter la commande Get-History. Toutefois, une étape cruciale vous permet de vous assurer que votre historique est sauvegardé. Vous NE POUVEZ PAS fermer PowerShell en cliquant sur le bouton de fermeture. Au lieu de cela, vous devez toujours le fermer avec la commande exit.
Vous pouvez utiliser les touches fléchées Haut et Bas pour parcourir les commandes précédentes.
commentaires