Z Shellに精通していない人、および日常のタスクのためのシェルを選択する上で岐路に立っている人のために、この記事は専用です。
多くの資料がzshの利点についてすでに書かれていると言わざるを得ません。 この控えめな注意については、構成ファイルの具体例を使用して、両方のシェルの機能を読者に示すことを目的としています。 筆者の理解では、bashは通常最初に使用するのに適しているため、独自の設定なしでzshを使用しない方がよいため、依然としてzshに重点が置かれています。
著者の完全な構成ファイルは
githubから取得できます。
I.シェルの最大の利点は自動補完ですbashにはオートコンプリートもありますが、これは現時点では誰も驚かないでしょう。 この意味で特に良いのはbash-completionです。これにより、ディレクトリへのパスを補完できるだけでなく、インストールするパッケージを効率的に検索できます。 以前に使用したことがない場合は、インストールすることをお勧めします。 このパッケージの追加設定は必要ありません。
Zshはあなたを驚かせるかもしれません。 おそらく、オートコンプリートはその長所の1つです。 すぐに注意してください。zshはモジュール式であり、その機能を拡張するには、必要なモジュールを接続するか、場合によってはインストールする必要があります。 さらに、zshでカスタマイズせずに行うことはできません。モジュールを.zshrcに含める必要があります。 実際の例を見てみましょう。
ArchLinuxの場合は、bash-completionなどのパッケージをすぐにインストールすることをお勧めします。これにより、pacmanとAURを使用したパッケージの検索でオートコンプリートを使用できます。これらはzsh-yaourtとzsh-packerです。 同じAURで見つけることができます。 オートコンプリートを接続します:
すでに悪くないですよね? 正直なところ、bashは一般的には大丈夫だったので、zshに切り替える可能性には興味がありませんでした。 しかし、実験では、zshは非常に便利であることが示されました。
II。 ホットキー私の知る限り、bashのホットキーは変更できません。 しかし、私が間違っている可能性があります。 これらは、すべてのLinuxsoidに知られているemacsエディターキーです。 これらはベースとして使用され、bashがインストールされているすべてのマシンで動作します。 もちろん、矢印を使用して文字間を移動したり、削除キーを使用して文字を削除したりすることを禁止する人はいません-これもbashであり、これも設定する必要はありません。
zshに切り替えます。 はい、おそらくご想像のとおり、zshではすべてをカスタマイズする必要があります。 もちろん、各キーを設定する必要がある場合は怖いでしょう。 使い慣れた2つのスタイル、viモードまたはemacsモードのいずれかを選択できます。
推奨事項:emascを選択して、任意のシェルの任意のマシンで自信を持ってホットキーを使用します。さらに、bashが最も人気があります-注目してください。
もちろん、必要に応じて個々のキーボードショートカットをカスタマイズできます。
例:
bindkey '\e[3~' delete-char
III。 エイリアスさまざまなチームのエイリアスを使用すると非常に便利です。 エイリアスは、bashとzshの両方の設定に最適です。 違いは、zshではコマンドだけでなく、個々のアプリケーションにファイルタイプ拡張子を割り当てることができることです。 これはどのように役立ちますか? この機能により、zshはファイルマネージャーを置き換えることもできます。 自分で見てください:
alias -sで始まる行に注意してください。 ここで想像してみてください。あなたはディレクトリにドキュメントがあり、その中に拡張子が.htmlのディレクトリが1つ以上あるとします。 私たちは通常何をしますか? ブラウザを起動し、Ctrl + Oを押し、ファイルを選択して表示します。 zshでエイリアスは何を許可しますか? ドキュメントの名前を書くだけで、すぐにブラウザで開かれます。
これを行うには、最初に個別のpick-web-browserモジュールがロードされます
IV。 チームの歴史そして、もちろん、コマンド履歴の使いやすさに異議を唱えるユーザーはいません。 ここで、zshはbashと変わりません。 設定してください:
V.その他のアメニティzshには、zsh-syntax-highlightingプラグインという興味深いものが1つあります。 ArchLinuxユーザーはAURからインストールでき、残りはgithubの同じ名前のプロジェクトからダウンロードできます。 それを置くと、ターミナルエミュレータが新しい色で輝きます。
最初は、256色をサポートしているだけでなく、一部の色が私たちの好みに合わないかもしれませんが、修正することができます。 色設定のメインファイルは、パスに沿って配置されています。
/usr/share/zsh/plugins/zsh-syntax-highlight/highlighters/main/main-highlighter.zsh ただし、直接編集する必要はありません(エラーを指摘してくれた
ZyXIに感謝します)。
.zshrcで必要に応じて色を変更し、プラグインをアクティブにします。
例:
また、zshには、アーカイブをパック/アンパックする非常に一般的な方法があります。 extract myfile.tarコマンドを入力します-アーカイブを解凍し、pk tar myfileコマンドを入力します-指定された形式のアーカイブにファイルをパックします。 zshがアーカイバを置き換えることができることがわかりましたか?
解凍するには、.zhsrcに書き込みます。
アーカイブを作成するには:
VI。 まとめZshは日常の作業に非常に便利であり、ルーチンのかなりの半分を実行します。 ただし、これら2つのシェルの違いに注意する価値があります。 たとえば、スペースの挿入が必須のforの後のzshでは、zshの配列の番号付けは1から始まりますが、これは完全に理解することはできません。
したがって、スクリプトを除く日常の作業にシェルを使用する場合は、zshを使用します。 独自のスクリプトを頻繁に作成する必要がある場合は、bashのみを使用してください。 ただし、組み合わせることができます。
個々のユーザーのデフォルトシェルとしてzshを設定する方法:
$ chsh -s /bin/zsh your_user