web-dev-qa-db-ja.com

より優れたWindowsコマンドラインシェルはありますか?

CMD.EXEは私にとって多くの問題を引き起こしています。 Cygwinをインストールし、bashを定期的に使用しています。また、mSysGitに付属しているmingwin bashシェルもありますが、Windowsシェルから実行する必要がある場合もあります。

次のようなWindowsシェルの代替品はありますか?

  • セッションを閉じた後、次のセッションで利用できる永続的なコマンドライン履歴がありますか? (bash HISTFILEと同様)
  • 2つのディレクトリを切り替えることができるように、今入っているディレクトリを覚えていますか? (bash cdのように-)

(または、CMD.EXEでこれらの機能を有効にする方法はありますか?)

以前はより優れたWindows Shell について質問された方もいらっしゃると思いますが、現時点では優先順位の低いカットアンドペーストについて質問されていました。私を殺しているのはコンソールではなく、コマンドラインインタープリターです。

33
skiphoppy

私はいつも4NTが好きでした(しばらく使用していません)。

これは、Windows用の拡張コマンドインタープリターであり、ほとんどの場合下位互換性があります(つまり、通常のWindowsバッチファイルを実行できます)。これを使用しない唯一の理由は、デフォルトのcommand.exeのようにWindowsに同梱されていないことです。

デフォルトのWindowsコマンドラインインタープリターと比較すると、フロー制御メカニズムが優れています。すべての標準的なWindowsコマンドラインツールを使用できますが、追加のオプションとパラメーターがあります。

基本的には、CMD.exeの本来の機能です。

Update:もはや4NTと呼ばれていないようですが、TakeCommand: http://jpsoft.com/products.htm

12

Microsoftがリリースされたばかり Powershell 。 (約2年前)

私はすでにそれをダウンロードしました。あまり試しませんでしたが、素晴らしいツールのようです。

24
Seb

もう1つの優れたソリューションは「Clink」で、CMD.exeを永続的な履歴とより多くのBASHのような機能で強化します。それをインストールして、通常どおりCMDを開きます。参照: http://code.google.com/p/clink/

または、本当に「cd-」を使用して前のディレクトリに移動したい場合は、WouterとPeterが述べたように、 http://jpsoft.com から「TCC/LE」の無料バージョンをインストールします。

8
sparrowt

私もPowershellを使用しています。これはLinuxシェルに似た優れたオブジェクト指向の拡張可能なフレームワークです。システム管理者だけでなく、開発者(ビルドプロセスなど)にとってもクールです。 Powershellはbashまたは他のLinux競合他社を揺るがします:)

主な導入:

  • 。NET言語で拡張可能
  • 。NETオブジェクトの使用(DateTime、Fileなど)
  • 簡単で明確な構文
  • リモーティング
  • デバッグ
  • ステップ可能なパイプライン
  • ...

ここからさらに:

http://blogs.msdn.com/powershell/default.aspx

http://windowsteamblog.com/blogs/windowsvista/archive/2006/11/14/it-forum-day-one-windows-Vista-and-windows-powershell.aspx

http://blogs.msdn.com/powershell/archive/2007/11/06/what-s-new-in-ctp-of-powershell-2-0.aspx

8
boj

PyCmd は両方の要件に適合します!そして、それはcmd.exeの上に構築されています...

  1. コマンド履歴はPyCmdセッション全体で永続的です
  2. 最近アクセスしたディレクトリの履歴(Alt-Left/Right/D空行)

ここに機能のリストがあります http://sourceforge.net/projects/pycmd/files/pycmd/0.8/

5
Juande Carrion

console2を試してください: http://sourceforge.net/projects/console/

私はそれが好きです

5
mkoryak

PowerShell 、と私は言うでしょう。これは、コマンドライン管理用のMicrosoftの新しい公式シェルです。

私は自分で開発タスクに使用し、気に入っています。非常に強力なコマンドラインで.NETフレームワーククラスと直接対話する柔軟性を提供します。

2
driis

他の人はすでにPowershellと4NTについて言及しましたが、どちらもCMDよりもはるかに優れたソリューションであり、そのすべての難解な構文、ドキュメントの欠如、そしてあなたがそれを使用したいほとんどすべてのタスクを実行できないという驚くべき能力がない:)

  • 4NTはTake Command GUIファイル管理スイートの一部になりましたが、所有者はシェルパーツのみを単独で使用できるようにしました。現在はTCC/LEと呼ばれ、無料です。ほとんどの人にとって私はこれを使用すると言います。これは、CMDとほぼ互換性のある構文を持ち、オンラインに多くのリソースを持ち、たとえばファイルシステムタスクの80%を完全に実行できるため、最も簡単な学習曲線です。

    TCC/LEダウンロード

  • より曖昧なニーズがある、多くの管理を行う、またはより多くの柔軟性が必要な場合は、Powershellを試してください。これは最初の学習曲線が急ですが、内部的には非常に一貫しており、基本を理解すると、99.9%のアクセスと操作が可能になります。 Windowsが処理するすべてのものは、同じツールとメソッドのセットを使用して、他のマシンのネットワークを介して実行されます。基本(ソート、選択、%および?)を学ぶことさえ、すでにCMDよりも優れています...

    PowerShellオーナーズマニュアル

    PowerShellの例

  • より技術的な傾向がある場合は、IPythonを検討します。コアは、Pythonコードを記述および実行するためのコンソールですが、シェル(およびタスク管理システム)としても機能します)手軽に-ブックマーク、エイリアス、コード/ファイルのタブ補完があり、コードとシェルコマンドを混在させることができます。たとえば、files=!dir *.txtdir *.txtの出力を保存し、入力および/または出力のログを構成できます。過去のコマンド、それらをエクスポートまたはマクロを作成し、それをさらにカスタマイズできる拡張機能があります。

    シェルとしてのIPython

    確かに気弱な人には向いていませんが、Pythonを知っているなら非常に強力な環境です!

1
spiralx

pushdとpopdを使用して、ディレクトリ間を移動できます。

c:> pushd windows c:\ Windows> popd c:\

1
David Owens

PowerShellを使用して作業を行うと、PowerShellは非常にうまく機能します。たとえば、.NETアプリとWindowsファイルをいじりたい場合。構文はBashよりもはるかに優れているため、スクリプト作成に最適です...

しかし、いくつかの典型的なUNIXアプリを操作したい場合、PowerShellがすべてのLF行末をCRLFに変換するとき(そしてバイナリファイルのパイプについてさえ考えていないとき)、簡単に問題が発生します) 。

ただ私の経験。

1
Rene Saarsoo

次に、PowerShellがあります。試したことはありませんが、いいことをたくさん聞いています。

0
Deniz Dogan