ホームページ >テクノロジー周辺機器 >IT業界 >75 ZSHコマンド、プラグイン、エイリアス、ツール
ZSH:75コマンド、プラグイン、エイリアス、ツールターミナルの効率を改善するのに役立つ
私はほとんどの時間の端末で毎日作業していますが、私が選んだシェルはZSHです。多くの強力な機能を備えた高度にカスタマイズ可能なUNIXシェルです。 Lazy Developer™として、入力量を減らし、すべてのタスクを自動化する方法を探しています。幸いなことに、ZSHはこのために生まれました。
この記事では、75のコマンド、プラグイン、エイリアス、ツールを共有し、キープレスを保存し、毎日の仕事の効率を向上させることを望んでいます。ZSHをマシンにインストールしていない場合は、この記事をご覧ください。すぐに開始する方法をお勧めします。
キーポイント
ZSHは、多くの便利な機能をBASHと共有しています。次の機能はZSHに固有のものではありませんが、それでも知る価値があります。コマンドラインを使用して、以下にリストされているアクションを実行することをお勧めします。最初はGUIを使用するよりも面倒なように見えるかもしれませんが、トリックを取得すると、後悔することはありません。
cd
を入力して、自宅のディレクトリに直接戻ります。 !!
最後のコマンドを呼び出します。管理者の特権が必要なため、コマンドが失敗した場合、これは非常に便利です。この場合、sudo !!
を入力できます。 &&
を使用して、複数のコマンドをリンクできます。たとえば、mkdir project && cd project && npm init -y
。 ||
を使用して条件付き実行を実行します。たとえば、git commit -m "whatever..." || echo "Commit failed"
。 -p
たとえば、各コマンドに基づいて環境変数を設定します:mkdir -p articles/jim/sitepoint/article{1,2,3}
。または、セッションごとに設定されています:NODE_DEBUG=myapp node index.js
export NODE_DEBUG=myapp
編集者の端末からファイルを開くことができます。たとえば、echo $variable-name
(nano)、cat /var/log/kern.log | less
history | grep ssh
ナビゲーションは重要なスキルです。矢印キーだけに頼らないでください。たとえば、nano ~/.zshrc
とsubl ~/.zshrc
はあなたを最後に連れて行きます。 code ~/.zshrc
<kbd>Ctrl</kbd> <kbd>a</kbd>
<kbd>Ctrl</kbd> <kbd>e</kbd>
<kbd>Ctrl</kbd> <kbd>w</kbd>
を使用して元に戻すことができます。 <kbd>Ctrl</kbd> <kbd>u</kbd>
を使用してテキストをコピーできます。これは、右クリックしてコピーを選択するよりもはるかにエレガントです。 <kbd>Ctrl</kbd> <kbd>k</kbd>
を使用してコピーされたテキストを貼り付けることができます。 <kbd>Ctrl</kbd> <kbd>y</kbd>
<kbd>Ctrl</kbd> <kbd>Shift</kbd> <kbd>c</kbd>
生産性を向上させるための15カスタムエイリアス<kbd>Ctrl</kbd> <kbd>shift</kbd> <kbd>v</kbd>
ファイルに追加して、端末(宣言(単純な)エイリアスの構文は次のとおりです。
<code>alias [alias-name]='[command]'</code>
エイリアスは、構文で覚えるのが難しいコマンド、長いコマンド、またはコマンドに最適です。頻繁に使用するエイリアスは次のとおりです
myip
Linux分布に関する情報を出力するエイリアス:alias myip='curl http://ipecho.net/plain; echo'
a
distro
alias distro='cat /etc/*-release'
。 reload
alias reload='source ~/.zshrc'
。これにより、実行の効果が回復します。 undo-git-reset
alias undo-git-reset-head="git reset 'HEAD@{1}'"
git reset HEAD~
更新パッケージリストのエイリアス:
alias sapu='sudo apt-get update'
sudo:
alias ffs='sudo !!'
私は怠け者であるので、
と入力してすべての依存関係を導入できることを意味します。 Scott Tolinskiから構文でこれを学びました。 y
yarn
alias y='yarn'
<kbd>y</kbd>
頻繁に使用しませんが、このエイリアスは
y node_modules
oupackage-lock.json
oalias yolo='rm -rf node_modules/ && rm package-lock.json && yarn install'
nlyliveonceを表しています。
編集用の私の
.zshrc
RbenvがインストールできるRubyバージョンの更新されたリストのエイリアス:alias zshconfig='subl $HOME/.zshrc'
現在のディレクトリでサーバーを起動するエイリアス(NPMパッケージは不要):alias update-available-rubies='cd ~/.rbenv/plugins/ruby-build && git pull'
。
ブラウザでドキュメントを開くエイリアスを作成することもできます:alias server='python -m SimpleHTTPServer 8000'
。
パイプのグローバルエイリアスは、コマンドの出力を少ないものにします:alias npmhelp='firefox https://github.com/robbyrussell/oh-my-zsh/tree/master/plugins/npm'
。次のように使用できます:
alias -g L='| less'
パイプのグローバルエイリアスは、コマンドの出力をGREPにします:cat production.log L
。次のように使用できます:
alias -g G='| grep'
関数を使用してエイリアスを作成することもできます。以下(ここから取られた)は、コードを追加、コミット、プッシュするエイリアスをGitHubに作成します。
<code>alias [alias-name]='[command]'</code>
オンラインでエイリアスに関するアイデアをもっと見つける場所はたくさんあります。たとえば、このハッカーのニュースディスカッション、またはZSHを使用してコマンドラインの生産性を向上させることに関するこの記事。
15あなたができるクールなこと(ああ)zsh
ああ、私のZSHは、ZSH構成を管理するためのコミュニティ主導のフレームワークであり、何千もの有用な機能、アシスタント、プラグイン、テーマがバンドルされています。 zシェルを毎日のドライバーとして使用する場合は、
ここに15の有用なことがあります。私のZSHがあなたのためにできること:take
を置き換えます。
take my-project
最初の20のコマンドとそれらの実行数のリストを提供します。 mkdir my-project && cd my-project
zsh_stats
のエイリアスです。 ..
2つのディレクトリを上向きに移動し、cd ...
3つ上向きに移動し、...
ナビゲートするときは....
を省略できます。たとえば、.....
を入力すると、ファイルシステムルートディレクトリに直接移動します。 cd
を入力して/
を押してから、/h/j/De
<kbd>TAB</kbd>
<kbd>Return</kbd>
は/home/jim/Desktop/
のエイリアスであり、rd
rmdir
md
mkdir -p
を入力して、ターミナルセッションで使用される最後のディレクトリをリストできます。 d
を使用して、これらのディレクトリのいずれかにナビゲートできます。ここで、nはディレクトリ番号です。 cd -n
を入力してls -
、<kbd>TAB</kbd>
、cap
にも適用されます。 rake
ssh
現在のエイリアスはすべてリストされます。 kill
alias
ls *.html
ls **/*.html
変更日でファイルを検索できます。たとえば、ls -l **/*(.x)
サイズごとにファイルを検索できます。たとえば、1MBを超えるサイズのすべてのファイルを探します。 ls *(m-7)
プラグインで楽しみと利益を得てくださいああ、私のzshにはプラグインが付属しています。これらのプラグインを閲覧し、ワークフローを助けることができる時間を学ぶ時間を投資する必要があります。
以下は、多くの便利なショートカットとエイリアスを提供する3つのプラグインです。
10美しいgitエイリアス
gitプラグインは、多くのエイリアスといくつかの有用な機能を提供します。これらを閲覧して、最も頻繁に使用している10を覚えてみませんか?これが私が最も使用しているものです。
g
は、git
の便利なエイリアスです。これは、g clone <whatever></whatever>
の代わりにgit clone <whatever></whatever>
のようなものを入力できることを意味します。キーは2つしかないかもしれませんが、すぐに蓄積します。 gaa
はgit add all
のエイリアスです。私はいつもこれを使ってきました。 gb
は、現在のリポジトリ内のすべてのブランチをリストし、現在どのブランチにあるかを表示するgit branch
のエイリアスです。 gcb
は、git checkout -b
のエイリアスであり、新しいブランチを作成できます。 gcm
はgit checkout master
のエイリアスです。これにより、メインブランチに戻ります。 gdca
はgit diff --cached
のエイリアスです。これにより、提出のためにステージングしているファイルの差別的な比較を行うことができます。 gf
はgit fetch
のエイリアスです。 gm
はgit merge
のエイリアスです。 gp
はgit push
のエイリアスです。リポジトリのブランチを同期するには、gf upstream
、gm upstream/master
、およびgp
を行うことができます。 glog
は、git log --oneline --decorate --graph
のエイリアスであり、美しいgitブランチグラフを提供します。 10便利なNPMエイリアス
npmプラグインは、完了と多くの有用なエイリアスを提供します。
npmg
は、システムにグローバルに依存関係をインストールするために使用できるnpm install --global
のエイリアスです。たとえば、npmg nodemon
。 npmS
は、依存関係をインストールしてnpm install --save
のセクションに依存関係をインストールするために使用できるpackage.json
のエイリアスです。 NPM 5.0.0から始めて、これが実行時にデフォルトであることに注意してください。 dependencies
npm i <package></package>
npmD
のエイリアスです。 npm install --save-dev
package.json
devDependencies
は、npmO
npm outdated
は、インストールされているパッケージをリストするnpmL
npm list
は、トップレベルのパッケージを一覧表示するnpmL0
npm list --depth=0
npmL0 -g
は、アプリケーションを開始するために一般的に使用されるNPMスクリプトのエイリアスです。 npmst
はnpm run start
のエイリアスであり、ご想像のとおり、テストを実行するために使用されます。 npmt
はnpm run test
のエイリアスです。それ自体は、プロジェクトで利用可能なすべてのNPMスクリプトと、その機能の説明をリストします。スクリプト名で使用すると、たとえばスクリプトが実行されますnpmR
npm run
はnpmR build
のエイリアスです。これにより、いくつかの質問をしてから、答えに基づいてnpmI
。 npm init
package.json
-y
10時間節約レール/レーキエイリアスnpmI -y
このプラグインは、Ruby on RailsフレームワークとRakeプログラムの完成、およびログと環境変数のエイリアスを追加します。 rc
は、CLIからRailsアプリケーションと対話できるrails console
のエイリアスです。 rdc
はrake db:create
のエイリアスです。これは(RAILS_ENV
が設定されていない限り)アプリケーションの開発およびテストデータベースを作成します。 rdd
は、アプリケーションの開発データベースとテストデータベースを削除するrake db:drop
のエイリアスです。 rdm
は、保留中のデータベースの移行を実行するrake db:migrate
のエイリアスです。 rds
は、開発データベースにデータを入力するためにrake db:seed
ファイルを実行するdb/seeds.rb
のエイリアスです。 rgen
は、ボイラープレートコードを生成するrails generate
のエイリアスです。たとえば、rgen scaffold item name:string description:text
。 rgm
は、データベースの移行を生成するrails generate migration
のエイリアスです。たとえば、rgm add_description_to_products description:string
。 rr
は、アプリケーションのすべての定義されたルートをリストするrake routes
のエイリアスです。 rrg
は、定義されたルートをリストしてフィルタリングできるrake routes | grep
のエイリアスです。たとえば、rrg user
。 rs
は、RailsデフォルトのWebサーバーを起動するrails server
のエイリアスです。 その他のリソース
上記のプラグインの主な仕事は、共通コマンドのエイリアスを提供することです。シェルに追加機能を追加できる他のプラグインがたくさんあることに注意してください。
以下は私のお気に入りの4つです:
sudo
<kbd>ESC</kbd>
を2回押すことで、現在または前のコマンドを簡単にプレフィックスできます。 sudo
autosuggestions
キーを押してください。リアルな時間節約ツール! <kbd>→</kbd>
command-not-found
で認識されていない場合、ubuntuの$PATH
パッケージを使用して見つけるか、スペルミスを提案します。 command-not-found
z
私の記事10 ZSHのヒントとトリック:構成、カスタマイズ、および使用法でトピックについて詳しく知ることができます。
結論
このようなものです:75 ZSHコマンド、プラグイン、エイリアス、およびツール。学習プロセス中に1つか2つのトリックを学んだことを願っています。GUIを離れてターミナルに行くことをお勧めします。見た目よりもはるかに簡単で、生産性を向上させる素晴らしい方法です。
お気に入りのプラグインや時間節約のエイリアス/コマンドを逃した場合は、Twitterでお知らせください。
あなたのツールキットからもっと手に入れたいですか? WileyのVisual Studioコード:Web開発者向けのエンドツーエンドの編集およびデバッグツールをご覧ください。
ZSHコマンド、プラグイン、エイリアス、およびツールに関するFAQbashなどの他のシェルを使用するよりも、zshを使用することの利点は何ですか?
ZSHプロンプトをカスタマイズする方法は?
ファイルに設定できます。たとえば、プロンプトに現在のディレクトリを表示する場合は、PROMPT
パラメーターを使用できます。したがって、あなたの.zshrc
変数は次のようになります:%~
。また、PROMPT
パラメーターを使用してプロンプトに色を追加することもできます。たとえば、プロンプトを緑にするには、PROMPT='%~%# '
を使用できます。 %F{color}
色をデフォルトの色にリセットします。 PROMPT='%F{green}%~%# %f'
%f
ZSHでエイリアスを使用する方法は?
alias
ZSHプラグインとは何ですか?それらをどのように使用しますか? ls -l
alias ll='ls -l'
ZSHプラグインは、ZSHシェルに追加機能を追加するスクリプトです。タスクの自動化、新機能の追加、シェルのカスタマイズに役立ちます。 ZSHプラグインを使用するには、最初にインストールする必要があります。これには通常、プラグインのリポジトリを.zshrc
ディレクトリにクローン化し、
BASHからZSHへの切り替えは簡単なプロセスです。まず、パッケージマネージャーを使用してZSHをインストールする必要があります。たとえば、ubuntuでは、sudo apt install zsh
を使用できます。 ZSHをインストールした後、chsh
コマンドを使用してデフォルトのシェルとして設定できます:chsh -s $(which zsh)
。次に端末を開くと、ZSHが使用されます。
zshテーマを使用すると、シェルの外観をカスタマイズできます。配色を変更したり、レイアウトをプロンプトしたり、現在の時間やGITステータスなどの要素を追加することもできます。 ZSHテーマを使用するには、最初にインストールする必要があります。これには、通常、トピックのリポジトリを.oh-my-zsh/themes
ディレクトリにクローン化し、.zshrc
ファイルの変数をトピックの名前に設定することが含まれます。テーマをインストールした後、ZSH_THEME
ファイルを取得してアクティブにすることができます:.zshrc
。 source ~/.zshrc
ファイルを編集してシェルのカスタマイズを開始できます。 .zshrc
キーワードを使用して関数を定義し、その後に関数名とコマンドブロックを定義できます。たとえば、「hello、world!」を印刷する関数を作成するには、使用できます:function
。関数名を入力することで、この関数を呼び出すことができます:function hello { echo "Hello, world!"; }
。 hello
set
を使用できます。インデックスを使用して、配列の要素にアクセスできます:set -A colors red green blue
。連想配列を作成するには、echo $colors[1]
コマンドを使用できます:typeset
。 typeset -A colors; colors[red]=#FF0000; colors[green]=#00FF00; colors[blue]=#0000FF;
Zshは、while、ullueまで、ループを含むいくつかのタイプのループをサポートしています。 forループを使用すると、リスト内の各要素に対してコマンドブロックを繰り返し実行できます。たとえば、1から5の数値を印刷するには、for i in {1..5}; do echo $i; done
を使用できます。 whileループを使用すると、条件が真の場合にコマンドブロックを繰り返すことができます。たとえば、1から5の数値を印刷するには、i=1; while (( i < 6 )); do echo $i; i=$((i 1)); done
を使用できます。 Loopを使用すると、条件が偽の場合にコマンドブロックを繰り返すことができます。たとえば、1から5の数値を印刷するには、i=1; until (( i > 5 )); do echo $i; i=$((i 1)); done
を使用できます。
以上が75 ZSHコマンド、プラグイン、エイリアス、ツールの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。