エイリアスを設定すると実行可能リンクが上書きされるのはなぜですか?

エイリアスを設定すると実行可能リンクが上書きされるのはなぜですか?

エントリを に追加するとリンクが上書きされるのはなぜでしょうか.bashrc。たとえば、テスト マシンで、 で Java をインストールし、を追加してapt-get install openjdk-7-jreを試してみました。bash から実行すると、にある java が実行されず、エコーが返されることがわかりました。また、 、でも同じことが起こることがわかりました。では、なぜこのようなことが起こるのでしょうか。.bashrcalias java="echo Java!"javaJava!/usr/bin/javapsshscreen

答え1

Bash はこのように動作します。マニュアルにも記載されていますが、入力をコマンドと一致させる場合、エイリアスは優先されます。

エイリアスの一般的な使用法は、コマンドをオーバーライドすることです。例:

alias java="\java -Xmx=1G"

上記のエイリアスは、Java プロセスで使用できるメモリのデフォルトの最大量を 256MiB から 1GiB に増やします。ただし、これが有効な効果を発揮する唯一の方法は、 と入力したときに、javaコマンドではなくエイリアスが実行されることです。

関連情報