スマートbashのようなオートコンプリート/コマンド履歴を備えたWindowsコマンドラインはありますか?


21

私は最近bashの使用を開始し、いくつかの本当に素晴らしい機能を発見しました(必ずしも箱から出てくるとは限りませんが、構成できます)

  • 上矢印/下矢印は部分的な補完をサポートします。「git」と入力し、上矢印を押すと、「git」で始まる最近のコマンドを参照できます(以前のセッションでも!)。
  • Ctrl-Rはコマンド履歴を検索します(何らかの理由でreverse-i-searchと呼ばれます)
  • 私は気づいていない多くの、もっと多くの、私は確信しています。

このような機能をサポートするWindows用の優れたcmd.exeの代替手段はありますか?私はこの質問に対するトップの回答を閲覧しましたが、人気のある代替案がそれをサポートしているかどうかはわかりませんでした。


2
コマンドプロンプトでF7を試したことはありますか?
ウィリアムヒルサム

していません。そして、最初のGoogleの結果(2005年以降も同様です!)はコーディングホラーです! codinghorror.com/blog/2005/07/stupid-command-prompt-tricks.html では、私の質問の別の部分に答えるだけで、さらにワクワクします。
ripper234

1
残念ながら、Windowsユーザーは一般的にシステムに付属しているものを使用し、cmd.exeに代わるものはありません。Cygwinは、Windows用のLinux「エミュレータ」として広く使用されています。試してみてください。@William:niceはそれを知りませんでしたが、bashを試したことはありますか?Bashは、現在のセッションだけでなく、古いセッションのコマンドを記憶しています。また、リンクを有効なURLに変換すること、ターミナルアプリケーションでマウスを使ってスクロールすること、長いリストについて話すことではなく、ripper234の状態として結果をフィルタリングします。これは常に私を困惑させます
...-m0skit0

2つの一般的なcmd代替については、以下(paradroidおよびRedGrittyBrick)と上記のハイパーリンクの回答の両方で説明します。後者の質問は、明らかに間違った前提に基づいています。マウスを使用して、コンソールウィンドウの水平方向のサイズを自分で変更しました。
JdeBP

回答:


22

Powershell 2.0コンソールをダウンロードしてインストールします(Windows 7を使用している場合は、既にインストールされています)。

エイリアス、マクロなど、すべてのレガシーコマンドをサポートしています...

基本的なヒントを次に示します

power-shell-dialog

get-history: 以前に入力したコマンドのリストを表示します。

invoke-history 35:get-historyリストのコマンド#35を実行します

`:逆アポストロフィキーを押して改行を挿入するか、エスケープ文字として使用してリテラル文字を作成します。パイプ(|)文字で改行することもできます。

Alt+スペース+ Eマーク、コピー、貼り付け、すべて選択、スクロール、検索オプションを備えた編集ショートカットメニューを表示します。次にK、[マーク]、[ Yコピー]、[ P貼り付け]、S[すべて選択]を押しLて、画面バッファーをスクロールするか、画面バッファーF内のテキストを検索します。画面バッファーをクリップボードにコピーするには、Alt+ Space + E+ Sを押してからAlt+ Space + E+を押しYます。

Alt+ F7:コマンド履歴を消去します。

Ctrl+ C:サブプロンプトから抜け出すか、実行を終了します。

Ctrl+ End:カーソルのの行のすべての文字を削除します。

Ctrl+ Left Arrow|| Ctrl+ Right Arrow:一度に1単語ずつ左または右に移動します。

Ctrl+ S:一時停止||出力の表示を再開します。

Esc 現在の行をクリアします。

F1カーソルをコマンドライン上で1文字右に移動します。行の最後に、最後のコマンドのテキストから1文字挿入します。

F2 入力した文字まで最後のコマンドラインをコピーして、新しいコマンドラインを作成します。

F3 現在のカーソル位置から行末まで、最後のコマンドラインの内容でコマンドラインを完成させます。

F4 現在のカーソル位置から入力した文字まで、現在のコマンドラインから文字を削除します。

F5 コマンド履歴を逆方向にスキャンします。

F7:に似ていget-historyます。コマンド履歴がポップアップウィンドウに表示され、コマンドを選択できます。リストをスクロールするには、矢印キーを使用します。を押しEnterて実行するコマンドを選択するか、Right arrowを押してコマンドラインにテキストを配置します。

F8 入力したテキストを使用して、コマンド履歴で逆方向にスキャンし、コマンドラインでこれまでに入力したテキストに一致するコマンドを探します。

F9コマンド履歴から特定の番号のコマンドを実行します。F7またはを押すと、コマンド番号がリストされますget-history

Page Up/ Page Down:コマンド履歴の最初/最後のコマンドを取得します。

右クリッククイック編集が無効になっている場合、マーク、コピー、貼り付け、すべて選択、スクロール、および検索オプションを含む編集ショートカットメニューが表示されます。スクリーンバッファーをクリップボードにコピーするには、右クリックして[選択]を選択し、Enterキーを押します。

Tab/ Shift+ Tab:Tabキーを押すか、Shift + Tabキーを押して、フォルダーまたはファイル名の自動補完を含むタブ展開機能にアクセスします。


部分履歴検索をサポートしていますか?
ripper234

1
はい、検索する文字列を入力してF8キーを押します。
surfasb

これは、PowerShellキーボードコントロールの非常に包括的な概要です。
パラドロイド

Powershellモジュールが必要なリストは後で作成します。。。
surfasb

1
@surfasb:この回答に関連するため、PowerTabを含める必要があります。それとのタブ移動は、IntelliSenseのようなものです。
パラドロイド

11

コマンドプロンプトを交換する必要はありません!Windowsには、次のようなこれらの機能の多くがコマンドプロンプトに組み込まれています。

  • コマンド履歴:F7およびF9

  • 前のコマンドから一度に1文字を追加します。 F1

  • ディレクトリとファイル名の自動補完: Tab

さらに多くのトリックがありますが、包括的なリストを備えたWebサイトを見つけることができなかったため、Googleをさらに調べる必要があります。


11

ClinkはWindowsコマンドラインを拡張し、次の機能を追加します

  • GNUのReadlineライブラリからの強力なBashライクな行編集
  • 優れたパス補完(TAB)
  • クリップボードから貼り付け(Ctrl-V)
  • 実行可能ファイル/コマンドおよび環境変数の補完のサポート
  • 元に戻す/やり直し(Ctrl-_またはCtrl-X、Ctrl-U)コマンドラインの履歴を改善しました。セッション間で持続
  • 検索可能(Ctrl-RおよびCtrl-S)。履歴展開(例、!!、!、および!$)。Luaを使用したスクリプト可能な補完。

パーフェクト。cmd.exeが非常に便利になります。
ベータ

5

Win-Bash

Windows用のスタンドアロンbash

win-bashは有名なGNU bashのWindows移植版です(GNU Bashホームページを参照)。

Windows用の他のbashポート(cygwin bashなど)とは異なり、win-bashは特別な環境やDLLを必要としません。バイナリは1つだけで、それだけです。

これがどれほど機能的で信頼できるかはわかりません。


jpsoftwareのtakeコマンドもあります-しかし、おっと、あなたが言及した他のQで言及されたので、おそらくあなたが望むことをしないでしょう。


実際、Take Command xeが望むことをします。それは持っているグローバルコマンド履歴なしコマンド・インタプリタが実行されていない場合であっても記憶させることができます。それは持っている履歴リストのフィルタリングと編集を。私の推測では、「トップアンサー」はアンサー#5に引き伸ばされていません。☺
JdeBP

@JdeBP-Take Commandはリストの約12位です。
ripper234

ここで表示すると、SuperUserは5番目の回答としてリストしています。
JdeBP

1
「アクティブ」、「最も古い」または「投票」で回答を並べ替えることができます。デフォルトでは「投票」であり、SuperUserは等しい投票で回答をランダム化するようです
更新

1
@ ripper234:何のことを言っているの?Win-Bashは昨年3月に更新されました。
パラドロイド

3

Take Commandはすでに言及されていますが、 TCC / LE(サブセット)は、より多くの機能、コマンド、カスタマイズ性を備えた無料の CMD代替品です。それは、キーボードショートカット、エイリアス、およびカラーリングに関する限り、bashのようなエクスペリエンスを提供する方向に向かっています。

Up/Down矢印を使用した部分的な履歴の完了など、言及したいくつかのことを実行できます。 CTRL-B前のコマンドからのパスを繰り返します。入力optionして、オプションの全負荷を確認してください。

TCC/LEConsole2でも非常にうまく機能します。

もちろん、WindowsでCygwinを使用してbashを使用することもできます


1

オープンソースのPyCmdコマンドプロンプト拡張機能は、ほとんどの機能を提供します。

その目的は、UNIXシェルのいくつかの強力な機能(まともなタブ補完、永続的な履歴など)をエミュレートすることです。

画像

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