Terminalをいじってみると、permanentエイリアスを作成する方法がたくさんあることに気付きました。
私はLinux初心者であり、私が知っていることから、次のことをしています。
Sudo ln -s /path/to/executable /usr/local/bin/desired_alias
desired_alias = '/path/to/executable'
を~/.bashrc
に追加~/.bashrc
のこれらの行のコメントを外します:
if [ -f ~/.bash_aliases ]; then
. ~/.bash_aliases
fi
desired_alias = '/path/to/executable'
を~/.bash_aliases
に入れる
すべて同じ効果があります。
最初の方法と2番目の方法の違いは何ですか?
最初の方法では、エイリアスを作成せずに、シンボリックリンクを作成しています。シンボリックリンクはシンボリックリンクの略です:
シンボリックリンクは、他のファイルへのポインターとして機能するファイルです。 [...]シンボリックリンクは特別なタイプのファイルであり、その内容は、リンクが参照する別のファイルのパス名である文字列です。つまり、シンボリックリンクは、基になるオブジェクトへのポインタではなく、別の名前へのポインタです。
シンボリックリンクの詳細を読む here および here 。
実際には、2番目の方法でのみエイリアスを作成しています。
エイリアスを使用すると、単純なコマンドの最初のWordとして使用される文字列をWordに置き換えることができます。シェルは、aliasおよびunalias組み込みコマンドを使用して設定および設定解除できるエイリアスのリストを保持します(以下のShell BUILTINコマンドを参照)。各単純コマンドの最初のWordは、引用符で囲まれていない場合、エイリアスがあるかどうかを確認するためにチェックされます。その場合、そのWordはエイリアスのテキストに置き換えられます。
コマンドを入力し、シェル(この場合はbash)を解釈できる場所であればどこでもエイリアスを定義できますが、エイリアスが他のシェルで使用できるようにするには、起動時にシェルによって解釈されるファイルで定義する必要があります(コンピューターの起動ではなく、シェルの起動)。
Bashの場合、これらは/etc/bash.bashrc
(システム全体)および~/.bashrc
です。これらのファイルは、シェルが対話モードで起動したときに解釈されます(Terminal
を使用するときなど)。プロファイルファイルは別の目的で使用されるため、言及しません。
したがって、エイリアスを~/.bashrc
に追加して、すべての対話型シェルで使用できるようにします。
.bash_aliases
メソッドは、エイリアスを~/.bashrc
に置くことと同じことをexactlyを達成しますが、より簡単になるという追加の利点がありますプログラムによって解析および操作されます。
. ~/.bash_aliases
は、現在実行中のシェルのコンテキストでソース(ロード)_~/.bash_aliases_
を意味します。