エントリを に追加するとリンクが上書きされるのはなぜでしょうか.bashrc
。たとえば、テスト マシンで、 で Java をインストールし、を追加してapt-get install openjdk-7-jre
を試してみました。bash から実行すると、にある java が実行されず、エコーが返されることがわかりました。また、 、でも同じことが起こることがわかりました。では、なぜこのようなことが起こるのでしょうか。.bashrc
alias java="echo Java!"
java
Java!
/usr/bin/java
ps
sh
screen
答え1
Bash はこのように動作します。マニュアルにも記載されていますが、入力をコマンドと一致させる場合、エイリアスは優先されます。
エイリアスの一般的な使用法は、コマンドをオーバーライドすることです。例:
alias java="\java -Xmx=1G"
上記のエイリアスは、Java プロセスで使用できるメモリのデフォルトの最大量を 256MiB から 1GiB に増やします。ただし、これが有効な効果を発揮する唯一の方法は、 と入力したときに、java
コマンドではなくエイリアスが実行されることです。