Windows PowerShell - jak przeglądać historię poleceń / datę

12

Chcę wyświetlić listę wprowadzonych poleceń w systemie Windows PowerShellwraz z odpowiadającymi im znacznikami czasu. Jak mogę to zrobić za pomocą Get-Historypolecenia?

Również jeśli nie jest to wykonalne, proszę pokaż mi sposób, w jaki sposób można urls(network)uzyskać dostęp do znaczników czasu za pośrednictwem CMD.

Weź również pod uwagę, że ponownie uruchomiłem komputer.

Ramin
źródło

Odpowiedzi:

17

W systemie Windows 10 rozszerzenie PS PsReadline jest domyślnie dostarczane z programem PowerShell 5. Pobierz treść na następujące tematy, aby wyświetlić pełną historię poleceń.

C: \ Users \ nazwa użytkownika \ AppData \ Roaming \ Microsoft \ Windows \ PowerShell \ PSReadline \ ConsoleHost_history.txt

Aby udostępnić go w systemie Windows 7, musisz upewnić się, że masz najnowszą wersję Framework i PowerShell 5. Następnie możesz zainstalować moduł PsReadline.

Właśnie zrobiłem na komputerze z systemem Windows 7 (64):

(wykonaniepolicy: zdalnie podpisane)

Install-Module PSReadLine (zostałem poproszony o zainstalowanie NuGet-anycpu.exe i odpowiedziałem tak).

Moduł importu PsReadLine

Twoja historia zostanie teraz zapisana w pliku wymienionym powyżej (zweryfikowanym)

Uruchom Get-PSReadlineKeyHandler, aby wyświetlić listę powiązań klawiszy PSReadline.

Dan St-G
źródło
C:\Users\DavidPostill\AppData\Roaming\Microsoft\Windows\PowerShellDla mnie ten katalog nie istnieje ...
DavidPostill
Prawda, jeśli korzystasz z wcześniejszych wersji PS. Dzięki za informację.
Dan St-G,
Hmm Korzystam z wersji 5.0 - z jakiej wersji korzystasz?
DavidPostill
Wygląda na to, że nie ma PSReadlineimplementacji PowewrShell 5.0 w systemie Windows 7.
DavidPostill
Masz całkowitą rację, David, przepraszam za wprowadzające w błąd. Post został edytowany.
Dan St-G
3

O ile mi wiadomo, po zamknięciu konsoli PowerShell cała historia i dzienniki są usuwane.

Możesz sprawdzić coś takiego: Nadawanie PowerShellowi trwałej historii poleceń

Oczywiście nie odzyska to niczego, co już zrobiłeś, zacznie rejestrować tylko od momentu zainstalowania.

EDYCJA: Wygląda na to, że PowerShell 5.0 zaimplementował trwałą historię, dostępną nawet po restarcie, dostępną w zwykły sposób.

Deadly-Bagel
źródło
3

Historia programu Powershell jest zapisywana w pliku ConsoleHost_history.txt, aby znaleźć lokalizację pliku, wykonaj polecenie PS: - (Get-PSReadlineOption) .HistorySavePath

AcmeUK
źródło
0

W przypadku PowerShell 5.1 i PowerShell Core dodałem to do mojego, $PROFILEaby było trochę łatwiej zapamiętać:

function Get-PSReadLineHistory
{
    Get-Content (Get-PSReadlineOption).HistorySavePath
}
Glenn
źródło
-2

Pobierz historię | Wybierz StartExecutionTime, ID, CommandLine

James Sargent
źródło
Działa to tylko dla bieżącej sesji powłoki. OP ponownie uruchomił komputer.
guest-vm