Windows PowerShell - Comment afficher la date / heure de l'historique des commandes

12

Je souhaite répertorier les commandes entrées dans Windows PowerShellavec leurs horodatages respectifs. Comment puis-je le faire avec la Get-Historycommande?

De plus, si cela n'est pas possible, veuillez me montrer un moyen de vérifier urls(network)quels horodatages ont été accessibles via le CMD.

Considérez également que j'ai redémarré mon ordinateur.

Ramin
la source

Réponses:

17

Sur Windows 10, l'extension PS PsReadline est fournie par défaut avec PowerShell 5. Get-Content sur les éléments suivants pour afficher l'historique complet de vos commandes.

C: \ Users \ username \ AppData \ Roaming \ Microsoft \ Windows \ PowerShell \ PSReadline \ ConsoleHost_history.txt

Pour le rendre disponible sur Windows 7, vous devez vous assurer que le dernier Framework et PowerShell 5 sont installés. Ensuite, vous pouvez installer le module PsReadline.

Je viens de le faire sur une machine Windows 7 (64):

(politique d'exécution: remodelé)

Install-Module PSReadLine (on m'a demandé d'installer NuGet-anycpu.exe, et j'ai répondu oui).

Module d'importation PsReadLine

Votre historique sera désormais stocké dans le fichier mentionné ci-dessus (vérifié)

Exécutez Get-PSReadlineKeyHandler pour obtenir une liste des liaisons de clés PSReadline.

Dan St-G
la source
Le répertoire C:\Users\DavidPostill\AppData\Roaming\Microsoft\Windows\PowerShelln'existe pas pour moi ...
DavidPostill
Vrai si vous utilisez des versions antérieures de PS. Merci pour l'info.
Dan St-G
Hmm. J'utilise la version 5.0 - quelle version utilisez-vous?
DavidPostill
Il semble qu'il n'y PSReadlineen ait pas dans l'implémentation Windows 7 de PowewrShell 5.0.
DavidPostill
Vous avez tout à fait raison, David, désolé pour le trompeur. Post édité.
Dan St-G
3

Pour autant que je sache, une fois que vous fermez une console PowerShell, tous les historiques et journaux sont supprimés.

Vous pouvez consulter quelque chose comme: Donner à PowerShell un historique persistant des commandes

Bien sûr, cela ne récupérera rien de ce que vous avez déjà fait, il ne commencera à se connecter qu'à partir du moment où vous l'installez.

EDIT: PowerShell 5.0 semble avoir implémenté un historique persistant, disponible même après redémarrage, accessible via les méthodes habituelles.

Deadly-Bagel
la source
3

L'historique Powershell est enregistré dans le fichier ConsoleHost_history.txt pour trouver l'emplacement du fichier, exécutez cette commande PS: - (Get-PSReadlineOption) .HistorySavePath

AcmeUK
la source
0

Pour PowerShell 5.1 et PowerShell Core, je l'ai ajouté à mon $PROFILEpour le rendre un peu plus facile à retenir:

function Get-PSReadLineHistory
{
    Get-Content (Get-PSReadlineOption).HistorySavePath
}
Glenn
la source
-2

Get-History | Sélectionnez StartExecutionTime, ID, CommandLine

James Sargent
la source
Cela ne fonctionne que pour la session shell actuelle. OP avait redémarré son ordinateur.
guest-vm