Aller au contenuAller à l'arborescence
  1. C:
  2. Users
  3. <utilisateur>
  4. AppData
  5. Roaming
  6. Microsoft
  7. Windows
  8. PowerShell\PSReadLine\ConsoleHost_history.txt
FichierRisque : Prudence

PowerShell\PSReadLine\ConsoleHost_history.txt C:\Users\<utilisateur>\AppData\Roaming\Microsoft\Windows\PowerShell\PSReadLine\ConsoleHost_history.txt

ConsoleHost_history.txt : historique des commandes de la console PowerShell tenu par PSReadLine, une commande par ligne, en clair. Peut contenir des secrets.

Mis à jour le Par AltF4 Formation

À quoi ça sert

ConsoleHost_history.txt est le fichier d’historique de PSReadLine, le module qui gère l’édition de ligne dans la console PowerShell. C’est lui qui fait revenir les commandes des sessions précédentes avec la flèche haut ou la recherche inverse (Ctrl+R). Il y en a un par profil utilisateur.

Ce qu’il contient

Les lignes saisies dans la console, une par ligne, en texte brut. Par défaut, PSReadLine garde 4096 entrées (MaximumHistoryCount) et écrit au fil de l’eau. Le chemin réel est celui du paramètre HistorySavePath, que Get-PSReadLineOption affiche.

Seul l’hôte console est concerné : PowerShell ISE et Visual Studio Code ont leur propre historique. PSReadLine écarte les lignes qui évoquent un secret, comme celles contenant password ou token, mais ce filtre est sommaire : ne comptez pas dessus.

Risques et bonnes pratiques

  • Le fichier est en clair. Mots de passe, jetons, noms de serveurs et chemins tapés en ligne de commande s’y retrouvent : ne le collez pas dans un ticket.
  • Ne tapez pas de secret directement. Get-Credential, Read-Host -AsSecureString ou un coffre de secrets évitent de laisser une trace.
  • Sur un poste partagé, Set-PSReadLineOption -HistorySaveStyle SaveNothing (dans le profil PowerShell) coupe l’enregistrement, ou supprimez le fichier à intervalle régulier.
  • En investigation, c’est un bon indice mais jamais une preuve : l’utilisateur peut éditer le fichier. Recoupez avec le journal opérationnel PowerShell et les journaux de sécurité.

Commandes utiles

Fenêtre de terminal
# Emplacement et réglages de l'historique
Get-PSReadLineOption | Select-Object HistorySavePath, HistorySaveStyle, MaximumHistoryCount
# Dernières commandes enregistrées
Get-Content -Path (Get-PSReadLineOption).HistorySavePath -Tail 20
# Chercher une commande (par exemple Get-Service)
Select-String -Path (Get-PSReadLineOption).HistorySavePath -Pattern 'Get-Service'
# Effacer l'historique de l'utilisateur courant : simuler d'abord avec -WhatIf
Remove-Item -Path (Get-PSReadLineOption).HistorySavePath -WhatIf

Signaler une erreur