Written by
JackYamamoto概要: この記事は、MacのZshシェルに異なるタイプのエイリアスを追加する方法と例を説明します。また、Zshで不要なエイリアスを削除する方法も紹介しています。
Zshでのエイリアスの使用には複数の利点があります。 Zshエイリアスを作成することで、長いコマンドラインを簡略化したり、ワークフローに合わせてコマンドラインをカスタマイズしたり、タイプミスやエラーの発生を減らすことができ、コマンドラインのエクスペリエンスを大幅に向上させることができます。
Oh My Zshを使用している場合は、組み込みのエイリアスを表示するためにコマンド aliasを実行できます。Oh My Zshにエイリアスを追加したい場合は、読み続けてください!
MacでZshにエイリアスを追加する方法
Zshのエイリアスは、ユーザーホームディレクトリ内の.zshrcファイルに保存されています。ただし、デフォルトでは、Macにはユーザー固有のzshrcファイルがなく、自分でインストールしたり作成したりしない限り、システム全体の/etc/zshrcファイルのみがあります。
どちらにせよ、Zshでエイリアスを作成する手順は次のとおりです。
注意: Oh My Zshは、Zshの設定を管理するためのフレームワークであり、Zshの上に構築されています。基本のZsh環境で設定されたすべてのエイリアスと構成を継承します。したがって、Zshで定義されたエイリアスはすべてOh My Zshでも利用できます。
Zshには、シンプル/通常のエイリアス、サフィックスエイリアス、グローバルエイリアス、およびパラメータ化されたエイリアスの4つの主要なエイリアスがあります。Zshにエイリアスを追加する一般的なプロセスは次のとおりです。
ヒント: コマンド名がすでに使用されているかどうか確認する場合は、type command_nameコマンドを使用してチェックするか、ターミナルでaliasを使用してすべてのエイリアスをリストアップすることができます。
- ターミナルを開きます。
- 以下のコマンドを実行して、zshrcファイルを開きます。(zshrcファイルがない場合、このコマンドによって.zshrcファイルが作成され、ホームディレクトリに保存されます。)nano ~/.zshrc
- Zshでエイリアスをカスタマイズします。一般的な構文は以下です。alias flag alias_name='command'
- 複数のコマンドを定義する場合は、各エイリアスを1行ずつにしてください。
- 変更を終えたら、Ctrl + Oを押してEnterキーを押して変更内容を保存します。
- nanoを終了するには、Ctrl + Xを押します。
- 変更を現在のシェルセッションに適用します。そうしないと、エイリアスを使用する際にエラー「zsh: command not found」が発生する可能性があります。source ~/.zshrc
- MacでZshエイリアスを自由に使用します。
様々なタイプのZshエイリアスの一般的な構文の使用方法を理解するのに役立つ具体的な例が以下に示されています。
警告: いくつかのユーザーは、何度試行してもZshエイリアスが機能しない場合があります。通常、追加のスペースやクォーテーションマークの不足など、エイリアスに誤りがあるためです。
Zshのシンプルなエイリアス
シンプルなエイリアスは、Zshで最も一般的に使用されるエイリアスの種類です。フラグはなく、簡単なコマンドの最初の単語でのみ展開されます。通常、頻繁に使用されるコマンドのショートカットを作成するために使用されます。
シンプルなエイリアスの例:
画面をクリア:
alias cls='clear'
このエイリアスはclsをclearに展開し、より短いコマンドでターミナル画面をクリアすることができます。
Gitのステータスを表示:
alias gs='git status'
このエイリアスはgsをgit statusに展開し、Gitリポジトリのステータスを確認するためのコマンドを簡略化します。
ディスク使用量を表示:
alias du='du -h'
このエイリアスはduをdu -hに展開し、読みやすいディスク使用量の要約を提供します。
対話型のファイル削除:
alias rm='rm -i'
このエイリアスはrmをrm -iに展開し、ファイルを削除する前に確認を求めるようにします。
Zshのグローバルエイリアス
一方で、グローバルエイリアスはalias -gコマンドを使用して定義されます。グローバルエイリアスは、現れる行のどこでも展開されます。グローバルエイリアスは、コマンドの一部のショートカットを作成するためや、コマンド内のさまざまな位置にテキストを挿入するために便利です。
グローバルエイリアスの例:
ディレクトリリスト:
alias -g L='| less'
Lを| lessに展開し、コマンドの出力を簡単にスクロールして表示することができます。
パターンマッチング:
alias -g G='| grep'
Gを| grepに展開し、コマンドの出力で特定のパターンを迅速に検索できるようにします。
ヘッドディスプレイ:
alias -g H='| head'
Hを| headに展開し、コマンドの出力の最初の数行を表示できるようにします。
大文字小文字を区別しないLess:
alias -g L.='| less -i'
L.を| less -iに展開し、"less"コマンドで大文字小文字を区別しない検索機能を提供します。
行数カウント:
alias -g C='| wc -l'
Cを| wc -lに展開し、コマンドの出力の行数をカウントすることができます。
Zshのパラメータ/引数を持つエイリアス
パラメータ化されたエイリアス、または「引数を持つエイリアス」としても知られる機能は、Zshシェルで使用できるもので、パラメータや引数を受け入れるエイリアスを作成できます。これらのパラメータは、特定の入力に基づいてエイリアスの動作をカスタマイズするためにエイリアス内で使用できます。以下は、パラメータ化されたエイリアスの5つの例です:
シンプルなファイル検索:
alias -s g='grep -r'
このエイリアスを使用すると、検索語をパラメータとして提供してファイル内の特定のパターンを検索できます。例:g pattern_to_search。
クイックディレクトリの変更:
alias -s cd.='cd ~/projects/'
このエイリアスを使用すると、ディレクトリ名をパラメータとして提供して特定のディレクトリに素早く移動できます。例:cd. project_name。
カスタマイズされたgrep:
alias -s mygrep='grep --color=auto'
このエイリアスを使用すると、追加のオプションをパラメータとして提供してカスタマイズされたgrepコマンドを使用できます。例:mygrep -i search_term file.txt。
ファイルの行数:
alias -s countlines='wc -l'
このエイリアスを使用すると、ファイル名をパラメータとして提供してファイル内の行数をカウントできます。例:countlines file.txt。
クイックGitコミット:
alias -s gc='git commit -m'
このエイリアスを使用すると、コミットメッセージをパラメータとして提供して指定されたメッセージで素早くgitコミットを行うことができます。例:gc "commit message"。
Zshでのサフィックスエイリアス
サフィックスエイリアスは、Zshシェルで特定のファイル拡張子に対してエイリアスを定義できる機能です。特定の拡張子を持つファイルでコマンドを使用すると、そのコマンドにエイリアスが自動的に適用されます。以下は、サフィックスエイリアスの5つの例です:
Markdownプレビュー:
alias -s md=typora
この別名は、ファイル名を入力するだけで、Typoraを使用してMarkdownファイルをプレビューできるようにします。例えば、example.mdのように入力します。
PDFビューイング:
alias -s pdf = evince
この別名を使用すると、ファイル名を入力するだけで、Evinceを使用してPDFファイルを表示できます。 document.pdfのように入力します。
画像の表示:
alias -s jpg = feh
この別名を使用すると、ファイル名を入力するだけで、Fehを使用してJPEGファイルを表示できます。例えば、photo.jpgのように入力します。
テキストの編集:
alias -s txt = nano
この別名を使用すると、ファイル名を入力するだけで、Nanoでテキストファイルを編集できます。例えば、notes.txtのように入力します。
Pythonスクリプトの実行:
alias -s py = python3
この別名を使用すると、ファイル名を入力するだけで、Python 3でPythonスクリプトを実行できます。例えば、script.pyのように入力します。
このポストを共有して、他の人がZshで別名を設定するのに役立つようにしてください。
MacでZshの別名を削除する方法?
時には、別名が予想どおりに機能しないか、もはや必要ないことがあります。そのような場合、次のコマンドでZshシェルで別名を削除できます:
unalias alias_name
たとえば、clsという別名(clearに展開される)を削除するには、以下のコマンドを使用できます:unalias cls。
このガイドが役立つと思ったら、共有してください!