究極のシェル - ZSH

https://zhuanlan.zhihu.com/p/19556676

今日のMacTalkの開始前に、今、二つの質問を依頼します:

1は、他のシステムに比べて、Macの主な利点は何ですか?
2、あなたが通常使用してシェル?
......

最初の子のブーツは、Macセクシーな腰とわかりまし明るいディスプレイ上のすべての焦点を置いていない、Macの最大の利点は、GUIとコマンドラインの完璧な組み合わせで、座ることができ、これは姉妹紙ではありません!あなたが出て行くと壁に直面している、と私はまだWindowsを使用するあなたを伝えるMacTalkのあまり話すことができる2番目の子のブーツは、CMD、あなたはその後、Macが君主聞かせ感じ?あなたが私に言ったとしても、私は、Linux、バッシュ、および蹴りを使用許します!

最後に、シェルで述べた「プログラミング言語を習得する方法」、一部の読者には、シェルの問題を求めているので、これは誰もがシェルについて話をするためのものです。

私は、「個々の設立についての何か」を導入し、シェル内部の少しは、私たち自身のことで恥を借りていない、がらくたが乾燥を残して、取り除いていた、次のとおりです。

シェルを使用して、服ラインとして理解シェルのLinux / Unixの、です。これは、結果がユーザーに返さ後に仕事を終えた後、ユーザーがコマンドや他のアプリケーションを受け、その後、これらのコマンドは、カーネルに変換されていることは本当の仕事であるカーネルに渡された言語を、理解することができ、Linuxカーネルの外の世界との相互作用のために責任がありますかアプリケーション。

Linux / Unixのシェルに髪のために多く、シェルを数多く提供していますか?それを揚げ食べるために使用されていますか?私は服の同じタイプを使用すると、非常に多くの作品を持っているか、お聞きしてみましょうか?色は、テクスチャが同じではありません。服を買うよりも複雑手順書が、複雑なため、多くの場合、担当するプログラマは簡単な事をする、シンプルなものが複雑になります。することができ、いくつかのシェルがあり、あなたのシステムを知りたい、など、そのいくつかの一般的なシェル、shのは、bash、cshのある牛のプログラマは再書き込みの独自のセットを持っていますが、不幸なシェルを見て、ゆっくりと多くの基準が形成され次のコマンドを確認します。

cat /etc/shells

それは次のようになります。

/bin/bash
/bin/csh
/bin/ksh
/bin/sh
/bin/tcsh
/bin/zsh

LinuxおよびMacでこのコマンドを実行すると、わずかに異なっている、あなたはzshのがあらかじめロードされているのMacのzsh、OS Xのシステムよりも多くを見つけるでしょう、これは神シェルの馬のことでしょうか?

現在、デフォルトのシェルに人気のLinux OSおよびOS Xのシステムはbashのですが、本当の力は、シェルzshの中に隠されている、これはスポーツカー空飛ぶ車、スポーツカーでは間違いなく物品の運送で、「究極のシェル」と呼ばれます設定が複雑すぎるので、しかし、こんなに早く誰もが興味を持っていない、多くの人々は何も背けないと言って、zshの設定ガイドを参照してくださいすることが走りました。1日まで、嫌な外国人のプログラマが「zshの私のオハイオ州」と呼ばれる、あなたはすぐにzshのプロジェクトを始めることを可能にするものを、開発している、GithubのURLは次のとおりです。このようなものは、あなたが魔法のクラッシュを行いますが、本当のことができ、シリーズ「X-日C ++を学ぶためにあなたを呼び出す」のようなものです。

さて、インストール、設定およびzshの使用方法を見てみましょう。

zshのをインストールします。

Macを使用する場合は、直接、次のセクションを参照してくださいすることができます
のsudo yumのzshのインストール:あなたはRedhat Linuxではを使用した場合に実行、
あなたがUbuntu Linuxのを使用する場合は、実行します。sudo apt-getのzshのをインストールし
、あなたが睡眠を洗うために...... Windowsを使用する場合。

現在のユーザーのインストール後の設定のzsh:CHSH -s / binに/ zshでは、その上に現在のユーザーのパスワードプロンプトに応じて。

インストールzshの私のオハイオ州

最初のgitをインストールすると、インストールは上記の、zshのgitが交換することができます。

「ああ、私のzsh」のインストールが自動的にインストールまたは手動でインストールすることができます。

自動インストール:

wget https://github.com/robbyrussell/oh-my-zsh/raw/master/tools/install.sh -O - | sh

手動インストール:

git clone git://github.com/robbyrussell/oh-my-zsh.git ~/.oh-my-zsh
cp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc

インストールが完了した後に複雑ではない、現在のセッションを終了し、再オープンターミナルウィンドウには、ヒントの色を見ることができます:


コンフィギュレーション

ユーザーの現在のディレクトリに焦点を当てた.zshrcのzshの構成は、vimのか、下部のあなたの他の好みのエディタで開いて.zshrcには、このような言葉があります:

#あなたのニーズにカスタマイズ...

あなたは私のzshのが自動的にインストールおよびセットアップ時に、現在の環境変数を読み込まれているもちろん、ああ、あなたが他の環境変数を追加し続けることができ、ここでは、独自の環境変数とエイリアスを定義することができます。

次のエイリアスの設定、私自身の構成の一部は次のとおりです。

alias cls='clear'
alias ll='ls -l'
alias la='ls -a'
alias vi='vim'
alias javac="javac -J-Dfile.encoding=utf8"
alias grep="grep --color=auto"
alias -s html=mate   # 在命令行直接输入后缀为 html 的文件名,会在 TextMate 中打开
alias -s rb=mate     # 在命令行直接输入 ruby 文件,会在 TextMate 中打开
alias -s py=vi       # 在命令行直接输入 python 文件,会用 vim 中打开,以下类似
alias -s js=vi
alias -s c=vi
alias -s java=vi
alias -s txt=vi
alias -s gz='tar -xzvf'
alias -s tgz='tar -xzvf'
alias -s zip='unzip'
alias -s bz2='tar -xjvf'

zshの糞は、また、のようなファイルタイプ、のために対応するプログラムを開くように設定し、共通のエイリアスを設定することができないだけということです。

あなたは、コマンドラインhello.html、あなたが自動的に開きますzshのTextMatを入力してhello.htmlを読むことを意味エイリアス-sのhtml =メイト、;別名-s GZ =「タール-xzvf」、自己解凍型の接尾辞GZを示しますアーカイブ。

要するに、単に木材はできない、と思います。

あなたは、環境変数とエイリアスを設定した後、基本的にあなたがコントロールの対象である場合、あなたはまた、zshのテーマを再生することができ、使用することができます。ZSH_THEMEあなたがテーマを設定することができます.zshrcに発見され、デフォルトのテーマは以下のとおりです。

ZSH_THEMEは=」robbyrussell」

ああ、私のzshのは〜/・OH-MY-zshの/ themesディレクトリ内のファイルを関連するトピックの数十を提供し、あなたが選ぶことができ、あなたも自分のニーズを満たすために、変態のテーマを編集することができ、私はデフォルトのテーマのrobbyrussellを使用しますが、やります少しの変更:

PROMPT='%{$fg_bold[red]%}➜ %{$fg_bold[green]%}%p%{$fg[cyan]%}%d %{$fg_bold[blue]%}$(git_prompt_info)%{$fg_bold[blue]%}% %{$reset_color%}>'
#PROMPT='%{$fg_bold[red]%}➜ %{$fg_bold[green]%}%p %{$fg[cyan]%}%c %{$fg_bold[blue]%}$(git_prompt_info)%{$fg_bold[blue]%} % %{$reset_color%}'

元のバージョンの制御、IはC dを変え、Cは、Dは次のように行われる変更の影響後の絶対パス、「>」の添加の終了時に他を表し、現在のディレクトリを表します。

我々は、それがまた面白いとみなされ、変換しようとすることができます。

最後に、我々はそれが言ったプラグイン。

プラグ

ああ、私のzshのプロジェクトは、包括的なプラグインアーキテクチャを提供し、〜/・OH-MY-zshの/プラグインディレクトリに関連するファイルは、100以上のデフォルトの申し出により、あなたはそれらの実際の学習や作業環境に応じて使用することができ、すべてのを知ってほしいですこれは、プラグインを備え、単に知るために、関連するディレクトリのzshルックでファイルを開きます。設定でプラグイン.zshrcにある、プラグインのキーワードを見つけ、あなた自身のプラグインをロードすることができ、システムのデフォルトの負荷gitの、あなたの後ろにコンテンツを追加することができ、次のように:

plugins=(git textmate ruby autojump osx mvn gradle)

以下は、いくつかの概要を示します。

1、のgit:あなたがコントロールのgitディレクトリの下にある場合に簡略化されている多くのgitコマンドに加えて、上記のように、シェルは明らかに例のGCO =「gitのチェックアウト」の、GD =、「gitの」とブランチを、表示されます'gitのdiffを'、GST = 'gitのステータス'、G = 'gitの' などが、大幅にgitコマンド長の熟練した使用を減らすことができ、コマンドの内容は〜/・OH-MY-zshの/プラグイン/ gitの/ git.pluginを参照することができます.zsh

2、TextMateの:MRのルビーは、プロジェクトのフレームワークを作成することができ、TMのfinenameは、指定されたファイルのTextMateを開くことができます。

3、OSX:タブの強化、クイックルックのファイル名は、直接人間がプレビューのgrepのはgrepがように、マニュアルのPDFバージョンを生成することができ、ファイルをプレビューすることができます。

4、autojump:zshの最も強力なプラグインの下に形成されたのzshとautojump組み合わせ、そして今日は、私たちは主にこの株式について話しています。

まず、Macを使用している場合、あなたは醸造設備を使用することができ、autojumpをインストールします。

brew install autojump

:それはのような、最新バージョンのautojumpをダウンロードするには、Linuxの場合には

wget https://github.com/downloads/joelthelion/autojump/autojump_v21.1.2.tar.gz

ディレクトリに解凍し、実行

./install.sh

最後に、次のコードは、.zshrc追加されます。

[[ -s ~/.autojump/etc/profile.d/autojump.sh ]] && . ~/.autojump/etc/profile.d/autojump.sh

この点、インストール、設定、プラグイントリニティ、究極シェルフルデビューで。トレーニング超高速風のzshの経験を開始するには再度ログインする端末セッションを終了します!

zshのを使用してください

図1は、互換性のbashは、bashの兄弟は騒音と騒音と、全く圧力を用いない切り替えました。

2、強力な履歴機能、グレップを入力して、あなたはすべてのgrepコマンドの実行をスクロールすることができ、矢印を使用しています。

3、インテリジェントなスペル修正、入力gtepのmactalk * -R、システムが要求されます:zshの:「グレップ」[nyae]いつもあなたが推測してみましょうしている姉妹紙、右、より親密に正しい「gtep」を......?

図4に示すように、種々の完了:パスの完了、コマンド完了、コマンド終了パラメータ、コンテンツ完了プラグインなど。トリガー補数は、単にTabキーまたは2をクリックして、用語のCTRL + N / Pを補完するために使用することができる/ F /上下スイッチB。あなたの中から選択するための複数のオプションが表示されますがある場合たとえば、あなたが唯一のJavaプロセスがある場合は、Javaの+タブキーを殺す、ジャワのプロセスを殺すだけで入力したい、zshのは自動的に、プロセスのPIDを置き換えます。SSH +スペース+ 2つのTabキー、zshのリストはすべてのホストとユーザー名の補完を訪問

5、インテリジェントジャンプは、インストールautojump後、zshのは、自動的にディレクトリ名がJ +ディレクトリから直接ジャンプすることができ、あなたが訪問したディレクトリを記録し、ディレクトリ名のサポートファジー・マッチングと自動補完は、例えば、あなたがhadoop-訪問しました1.0.0ディレクトリ、適切にジャンプするj個の波動を入力してください。ライブラリーへのパスの履歴を見ることができます-stat J。

6、ディレクトリの参照とジャンプ:入力D、あなたがリストの先頭に数字を入力して、このセッションでは、ディレクトリのリストにアクセスすることができ、あなたが直接ジャンプすることができます。

7、入力..か...現在のディレクトリ内、またはジャンプすることができ、現在のディレクトリの名前を入力し、あなたは、もはやでもコマンドCDを入力する必要がありません。

8、ワイルドカード検索が:. Lsの-l ** / * SH、シェルは再帰的にカレントディレクトリ内のファイルを表示し、ファイルができる代わりに見つけ、あまりにも多くのファイルXiecaiから来ました。

9、より多くの別名:1を設定してください。

10は、プラグインのサポート:プラグインを参照してください。

......

この記事を読んだ後、あなたが知っている、もはや司令官で、1をのzshません!究極の単語がカバーされていません。

あなたは、シェルのプログラマを使用している場合、あなたはまだbashのを使用する場合は、その後、壁に直面して、あなたがMacTalkを購読もちろんのこと、悔い改めに行ってきました!

プログラマ退屈なzshのオハイオ州私が開発者に感謝、彼はそのための物質に関心を収穫していないかもしれないが、彼のコードは、多くの時間を節約し、多くのプログラマの効率を高めるために、我々は言う、プログラマが世界を変えます!

MacTalkは、名前を争っていお金を稼ぐことができないこの事は、どのような目的に書き込みを理解していない友人や家族、多くを書くのか?私は、不動産株の合計値とコーディング、書き込み、および他の人を助けるために少し何かを作るためには、それよりも優れている、学ぶために、だと思う......

 

マイクロチャネルパブリックアカウントから記事の内容:MacTalk

おすすめ

転載: www.cnblogs.com/dhcn/p/11666845.html