Linux では、 と のようにするhistory | grep abc
と、「abc」で始まるコマンドのみが表示されます。Windows の cmder では、 コマンドを使用してコマンドの履歴を表示できますhistory
が、コマンドの最初の数文字でフィルタリングする方法が見つかりません。|
とに相当するものはないようですgrep
。
答え1
cat %CMDER_ROOT%\config\.history | grep abc
Cmder::Cmder
セッションにはhistory
doskey マクロがあります。マクロの出力はパイプを使用して渡すことはできませ|
んが、doskey マクロの内容であるコマンドを使用できます。
答え2
grep
Windowsでののおおよその類似物はfind
と ですfindstr
。つまり、history 2>&1 | find "abc"
または を実行するだけです。history 2>&1 | findstr abc
それらの違いは次のとおりです。
find
Unicode (UTF-16) はサポートしていますが、正規表現はサポートしていません。また、findstr
正規表現はサポートしていますが、Unicode はサポートしていません。find
検索文字列を引用符で囲む必要があるがfindstr
、
無関係な機能セットを持つ FIND プログラムと FINDSTR プログラムの両方が存在するのはなぜですか?
PowerShell には、より良い解決策があります:文字列を選択のすべてfind
とfindstr
それ以上のものをサポートします。また、行の長さの制限はありません。