web-dev-qa-db-ja.com

グローバルで永続的なCMD履歴はありますか?

時々、CMDコマンドの正確な構文がどのように見えるかを忘れて、自分のCMD履歴を検索したいと思います。明らかに、同じセッション内で、上矢印キーと下矢印キーを使用してそれを参照できますが、以前のCMDセッションの履歴はどうですか?ファイル、履歴が書き込まれるログ、またはすべてデジタルニルヴァーナに送られるログはありますか?

ありがとう!

105
raoulsson

いいえ、セッションが終了すると、Windowsコマンドプロンプトの履歴を保存できません。

35
Massimo

ネイティブではなくチェックアウト: http://mridgers.github.io/clink/ 、cmd.exeの生産性を大幅に向上させます。プロジェクトページからの機能の引用:

Powerful Bash-like line editing from GNU's Readline library.
Superior path completion (TAB).
Paste from clipboard (Ctrl-V).
Support for the completion of executables/commands, and environment variables.
Undo/Redo (Ctrl-_ or Ctrl-X, Ctrl-U)
Improved command line history.
Persists across sessions.
Searchable (Ctrl-R and Ctrl-S).
History expansion (e.g. !!, !<string>, and !$).
Scriptable completion using Lua.
68
Robert Bak

Massimoは、コマンドプロンプトの履歴がセッション間で保持されないことは正しいです。 doskey/history> history.txtと入力して、プロンプトを閉じる前に手動でこれを取得できます

または... PowerShell をCMDプロンプトとして使用し、 この投稿 に従って、セッション間で履歴を維持できます。

15
Sean Earp

clinkを使用できます。

Clinkは、ネイティブのWindowsシェルcmd.exeとGNU Readlineライブラリの強力なコマンドライン編集機能を組み合わせたもので、充実した補完、履歴、および行編集機能を提供します。

Clinkをインストールする最も簡単な方法は chocolatey を使用することです。 Chocolateyをインストールしたら、次のように入力してclinkをインストールできます。

choco install clink

次にcmd.exeを起動したときから、セッション全体の履歴が保存されます。

11
Joji Antony

現在の履歴をファイルに保存することが可能で、

`$ doskey /history > somefile.txt`

しかし、それを履歴としてロードする方法はないようです。コマンドライン引数を使用してすべてのラインをロードして実行することのみが可能です。

cmd.exe /K somefile.txt

、doskeyマクロのリストをロードするのに役立つもの。この呼び出しはショートカットに含めることができるため、毎回入力する必要はありません。 このリファレンスには、このアプローチに関する追加情報があります

同様の質問 スーパーユーザー があり、@-RobertBakによって提案されているように clink を含むいくつかの選択肢があります。

7
mMontu

コマンド履歴:コマンド履歴(上矢印キーと下矢印キーを使用してアクセスできる)を有効にするには、コマンドプロンプトでdoskeyを実行します。たとえば、100要素のコマンド履歴を作成するには:

doskey /listsize=100

ref: https://users.cs.jmu.edu/bernstdh/web/common/help/ntshell.php

1

clink は素晴らしいです。著者はリリースごとにチョコレートパッケージを公開していますが、DeepBlueCLIをお勧めします。

https://github.com/sans-blue-team/DeepBlueCLI を使用して、WindowsセキュリティイベントID 4688を設定できます。

PowerShellの場合、DeepBlueCLIはモジュールログ(PowerShellイベント4013)とスクリプトブロックログ(4104)も使用します。文字起こしは使用しません。

追加の利点は、AppLockerイベントログにコマンドラインexeのハッシュを記録することです。ソース: https://docs.Microsoft.com/en-us/windows-server/identity/ad-ds/manage/component-updates/command-line-process-auditing

また、このソリューションはWindowsイベントログインフラストラクチャを使用しているため、WMIまたはPowerShell Get-EventLog。 clinkでは、システム全体またはネットワーク全体の動作パターンを検出するために、別のツールを学ぶ必要があります。

1
John Zabroski