Windows PowerShell-コマンド履歴の日付/時刻を表示する方法


12

Windows PowerShellで入力したコマンドをそれぞれのタイムスタンプとともに一覧表示したい。Get-Historyコマンドでどうすればいいですか?

また、それができない場合はurls(network)、どのタイムスタンプにを介してアクセスしたかを確認する方法を教えてくださいCMD

また、コンピュータを再起動したことも考慮してください。

回答:


17

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キーバインディングのリストを取得します。


ディレクトリC:\Users\DavidPostill\AppData\Roaming\Microsoft\Windows\PowerShellは私には存在しません...
DavidPostill

以前のバージョンのPSを実行している場合はTrue。情報をありがとう。
Dan St-G

うーん。バージョン5.0を実行していますが、どのバージョンを実行していますか?
DavidPostill

PSReadlinePowewrShell 5.0のWindows 7実装にはないようです。
DavidPostill

あなたは間違いなく正しいデビッドです。投稿を編集しました。
Dan St-G

3

私の知る限り、PowerShellコンソールを閉じると、すべての履歴とログが破棄されます。

あなたのような何かをチェックアウトすることができます:PowerShellのコマンドにの永続的な歴史を与えます

もちろん、これはあなたがすでに行ったことを取得することはありません。それはあなたがそれをインストールした時点からのみロギングを開始します。

編集:PowerShell 5.0には、通常の方法でアクセスできる、再起動後でも利用できる永続的な履歴が実装されているようです。


3

PowerShellの履歴はファイルConsoleHost_history.txtに保存され、ファイルの場所を見つけて次のPSコマンドを実行します :-(Get-PSReadlineOption).HistorySavePath


0

PowerShell 5.1とPowerShell Coreの場合、$PROFILE覚えやすくするためにこれを追加しました。

function Get-PSReadLineHistory
{
    Get-Content (Get-PSReadlineOption).HistorySavePath
}

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.