web-dev-qa-db-ja.com

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

私は最近bashの使用を開始し、いくつかの本当にすばらしい機能を発見しました(必ずしも箱から出されるわけではありませんが、構成することができます)。

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

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

21
ripper234

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

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

基本的なヒント をいくつか示します。

power-Shell-dialog

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

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

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

Alt+スペース+EMark、Copy、Paste、Select All、Scroll、Findオプションを含む編集ショートカットメニューを表示します。次に押すことができます K マークのために、 Y コピーの場合、 P 貼り付け用 S すべて選択の場合、 L 画面バッファをスクロールする、または F 画面バッファ内のテキストを検索します。画面バッファーをクリップボードにコピーするには、 Alt+スペース+E+S そして次に押します Alt+スペース+E+Y

Alt+F7:コマンド履歴をクリアします。

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

CtrlEnd :行内のすべての文字を削除しますafterカーソル。

CtrlLeft Arrow || CtrlRight Arrow :一度に1単語ずつ左または右に移動します。

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

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

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

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

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

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

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

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

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

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

Page UpPage Down:コマンド履歴のfirst/lastコマンドを取得します。

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

TabShift+Tab:Tabキーを押すか、Shift + Tabを押して、フォルダーまたはファイル名のオートコンプリートを含むタブ拡張機能にアクセスします。

23
surfasb

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

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

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

  • コマンド履歴: F7 そして F9

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

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

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

11
Keltari

Win-Bash

Windowsのスタンドアロンbash

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

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

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


Jpsoftwareの take command -もありますが、おっと、それはあなたが言及した他のQで言及されているため、おそらくあなたが望むことをしていません。

5
RedGrittyBrick

Take Command はすでに言及されていますが、 TCC/LE (サブセット)はfreeCMDより多くの機能、コマンド、カスタマイズ性で置き換え。キーボードショートカット、エイリアス、カラーリングに関しては、bashに似たエクスペリエンスを提供するための方法です。

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

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

また、Windowsではbashを Cygwin で使用することもできます。

3
paradroid

オープンソースの PyCmd コマンドプロンプト拡張機能は、ユーザーが求めるほとんどのことを実行します。

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

image

1
harrymc