カジュアルに使用するには zsh に切り替える価値がありますか?[閉まっている]

StackOverflow https://stackoverflow.com/questions/43321

  •  09-06-2019
  •  | 
  •  

質問

Mac OS X のデフォルトのシェルは次のとおりです。 bash, 、概ね満足して使っています。それを当然のことだと思っています。自動で完了してくれれば本当に良いのですが もっとたくさんのもの, でも、良いことを聞いたことがあります。 zsh この点について。しかし、私はコマンド ラインを使用する生活がそれほど悪くないので、コマンド ラインの使用法を少しでも改善するために設定をいじるのに何時間も費やす気はありません。

(私が理解しているところによると、 bash より賢くオートコンプリートするように設定することもできます。これは私があまり興味のない設定です。)

に切り替えます zsh, 、たとえ少数のケースであっても、私の生活は楽になりますか?それとも時間をかけて学習すればより良いシェルになるだけなのでしょうか? なぜ 良いですか?(例もいいですね :) )


@ロドニー・アマト & @バルカン・イーガーそれぞれに固執する正当な理由を 2 つ挙げてください bash そしてに切り替えます zsh. 。両方とも調査する必要があるようです!しかたがない :)

議論の両方の側から意見を持つ人はいますか?

役に立ちましたか?

解決

カジュアルに使用する場合は、bash を使い続けて、bash 補完をインストールするだけのほうがよいでしょう。

インストールは非常に簡単です。bash-completion-20060301.tar.gz を取得します。 http://www.caliban.org/bash/index.shtml#completion そしてそれを抽出します

tar -xzvf bash-completion-20060301.tar.gz

次に、bash_completion/bash_completion ファイルを /etc にコピーします。

sudo cp bash_completion/bash_completion /etc

パスワードの入力を求められます。おそらく、追加の補完スクリプト用に /etc/bash_completion.d ディレクトリを作成するとよいでしょう (たとえば、そこに git 補完スクリプトがあります)。

これが完了したら、最後のステップは、ホーム ディレクトリの .bash_profile ファイルに

if [ -f /etc/bash_completion ]; then
     . /etc/bash_completion 
fi

ログイン時に完了ファイルをロードするためにこのファイルに追加します。

これをテストするには、新しいターミナルを開いて、CVS で補完してみてください。補完リストに CVS オプションが表示されるはずです。

他のヒント

個人的にはzshが大好きです。

一般に、再帰的なグロビングなどのことをすぐに実行するまでは、おそらく bash との違いに気付かないでしょう。

  • **/*.c 例えば。

または、サフィックス エイリアスを使用して特定のプログを異なるサフィックスに関連付け、それらを直接「実行」できるようにします。以下のエイリアスを使用すると、プロンプトで次のように入力するだけで C ソース ファイルを「実行」できます。 ./my_program.c – 入力したのとまったく同じように機能します vim ./my_program.c. 。(ファイルのアイコンをダブルクリックするのと同じです。)

  • alias -s c=vim

または、今日変更されたファイルの名前を出力します。

  • print *(e:age today now:)

おそらくこれらのことはすべて bash で実行できますが、zsh を使用した私の経験では、やりたいことがあれば、おそらくそれを見つけることができるでしょう。 zsh愛好家。』という本も見つけました。Bash から Z-Shell へ'本当に便利です。

気が遠くなるような豊富なオプションで頭を悩ませて遊ぶのも楽しいですよ!

zsh に切り替えます。以下にアクセスできるようになります。

  1. zmv:できるよ: zmv '(*).mp3' '$1.wma' 数千のファイルに対応。
  2. zcalc:非常に快適な電卓、より優れています bc.
  3. zparseopts:スクリプトに指定された任意の複雑なオプションを解析するためのワンライナー。
  4. autopushd:いつでもできる popdcd をクリックして、前のディレクトリに戻ります。
  5. 浮動小数点のサポート。時々必要になります。
  6. ハッシュのサポート。場合によっては、それらは単なる重要な機能であることもあります。

ZSH を使用して完成度を高めることだけを目的としている場合、構成は非常に簡単です。これを ~/.zshrc に配置します。

autoload -U zutil      # [1]
autoload -U compinit   # [2]
autoload -U complist   # [3]
compinit

ただし、ZSH の他の優れた機能をすべてチェックする価値があります。上記の例では、適切な補完を伴う非常に単純なプロンプトが表示されます。構成をいじりたくないが、ZSH で何ができるかを知りたい場合は、Google で「zshrc」を検索すると、すぐに使用できる構成がいくつか入手できます。

zsh にはコンソール GUI 設定機能があります。構成ファイルをいじる必要がなく、非常に迅速かつ簡単にセットアップできます。セットアップにはそれほど時間はかからないと思います (デフォルトを使用するだけでおそらく 10 秒程度です)。ぜひ試してみてください。

Staale は、初めて zsh を実行したときに自動実行されるウィザードのようなプログラム (CUI) について話しています。いくつかの質問に答え、デフォルトと設定を表示/変更するだけです。

IBM developerWorks には、zsh に関する優れたリソースがあります。

私はあまり高度な機能を使用したことがありませんし、これまでのところ、bash から来る人を妨げるような深刻な違いには遭遇していません。

いくつかの例:

  • !?パターンu003CTab>歴史マッチングパターンの最後のコマンドにオートコンプリットします。非常に便利。

  • RHSでプロンプトを構成できます。1つの用途は、左側に固定幅プロンプトを保持することです。そのため、すべてのコマンドが右側のプロンプトとしてPWD(または可変幅のあらゆるもの)を表示しながらうまく並んでいます。

  • 複数のファイルからの入力をリダイレクトできます (まだ試していません)。猫 < ファイル 1 < ファイル 2 < ファイル 3

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top