Windowsで入力したコマンドPowerShell
とそれぞれのタイムスタンプを一覧表示したい。 _Get-History
_コマンドでどうすればよいですか?
また、それができない場合は、CMD
を介してタイムスタンプにアクセスしたurls(network)
を確認する方法を教えてください。
コンピュータを再起動したことも考慮してください。
Windows 10では、PS拡張機能のPsReadlineにPowerShell 5がデフォルトで付属しています。次のGet-Contentを使用して、完全なコマンド履歴を表示します。
C:\ Users\username\AppData\Roaming\Microsoft\Windows\PowerShell\PSReadline\ConsoleHost_history.txt
Windows 7で使用できるようにするには、最新のFrameworkとPowerShell 5がインストールされていることを確認する必要があります。次に、PsReadlineモジュールをインストールできます。
私はWindows 7(64)マシンで実行しました:
(実行ポリシー:remotesigned)
Install-Module PSReadLine(NuGet-anycpu.exeのインストールを求められ、はいと答えました)。
Import-Module PsReadLine
これで、履歴が上記のファイルに保存されます(確認済み)。
Get-PSReadlineKeyHandlerを実行して、PSReadlineキーバインディングのリストを取得します。
私の知る限り、PowerShellコンソールを閉じると、すべての履歴とログが破棄されます。
次のようなものをチェックアウトすることができます PowerShellにコマンドの永続的な履歴を与える
もちろん、これはあなたがすでに行ったことを取得することはありません。それはあなたがそれをインストールした時点からのみロギングを開始します。
編集:PowerShell 5.0には、通常の方法でアクセスできる、再起動後でも利用できる永続的な履歴が実装されているようです。
PowerShellの履歴はファイルConsoleHost_history.txtに保存され、ファイルの場所を見つけて次のPSコマンドを実行します:-(Get-PSReadlineOption).HistorySavePath
PowerShell 5.1およびPowerShell Coreの場合、これを$PROFILE
に追加して、覚えやすくしました。
function Get-PSReadLineHistory
{
Get-Content (Get-PSReadlineOption).HistorySavePath
}