PowerShell + Ctrl + Rに相当しますか?


13

bashでは、Ctrl+ Rを実行し、コマンドを入力して履歴を検索できます。

PowerShellでそれをどのように行うのですか?

キーを次のようなものにバインドする方法はありますか?

function GH($str) {get-history | select-string $str}

しかし、文字入力ごとに文字列を再読み込みするか、Ctrl+のように一致するコマンドを出力するために削除する必要がありますR

これは可能ですか?

回答:


11

PSReadLineモジュールを採用することでこれを修正できます。

Hey、Scripting Guy!に関する記事をご覧くださいこのbashに関するブログは、PowerShellのreadline実装に影響を与えました。

特に、Ctrl+ Alt+(Shift)+?すべてのキーバインドを表示します。

PS C:\> $PSVersionTable

Name                           Value
----                           -----
PSVersion                      5.0.10240.16384
WSManStackVersion              3.0
SerializationVersion           1.1.0.1
CLRVersion                     4.0.30319.42000
BuildVersion                   10.0.10240.16384
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0...}
PSRemotingProtocolVersion      2.3

Ctrl+R

PS C:\> Get-Module -ListAvailable
bck-i-search: mo_

Ctrl+ Alt+(Shift)+S

Key                  Function                 Description
---                  --------                 -----------
Ctrl+r               ReverseSearchHistory     Search history backwards interactively
Ctrl+s               ForwardSearchHistory     Search history forward interactively

つまり、このモジュールを手動でインストールするか、Windows PowerShell v5にアップグレードします。


5

検索用語を入力してF8を押すと、コマンド履歴が検索されます。

PowerShellショートカットの非常に便利なリストがここにあります


自分で試したことはありますか?それは本当に私にとっては、または半分の時間しか実際に機能しませんでした。たとえば、多数のget- <whatever>コマンドを入力します。次に、get- <F8>と入力すると、履歴から1つまたは2つのランダムコマンドだけが循環しますか?私は一体何をしているのか分かりません。たとえば、get-childitemと入力し、get-c <f8>と入力した直後に実行すると、何も表示されません。セッションがめちゃくちゃになったのでしょうか?
red888

私のために100%の時間を働く、これがインストールさWMF 5である
サム・コーガン

5

これがいつ追加されたかはわかりませんが、カスタマイズされていない更新されたWindows 10には組み込まれています。ctrl+ rを押すと、逆履歴検索ができます。

ここに画像の説明を入力してください


私はwin10にも取り組んでいます。Ctrl + RはPowerShellでは機能しますが、cmdウィンドウでは機能しません。
-dudu

確かに、なぜcmd.exeを使用する必要があるのですか?
ラウルサリナス-モンテグード

0

F7キーの下にグラフィカルな検索もあります。押されると、以前に実行されたコマンドを検索するためにスクロールできるポップアップが表示されます。カーソルをライン上に置いたままEnterキーを押すと、再度実行されます。


0

また、検索するコマンドの部分検索テキストの前に#文字を入力してコマンドを開始し、その後(必要に応じて複数回)タップしてセッション履歴を検索することもできます。

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