私は/usr/bin/
主に/usr/sbin/
。一部のLinuxディストリビューションなどのデフォルトのパッケージマネージャがないため/usr/local/<package_name>/
。
これにより、システムからパッケージを完全に削除できますが、ファイル内の変数PATH
と変数を手動で更新する必要があります。MANPATH
.bashrc
簡単な例は次のとおりです。
/usr/bin
Mac OS/usr/local/apache-ant-1.8.2
.bashrc
# Mac OS X original PATH
PATH="/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin"
# Apache Ant 1.8.2
PATH="$PATH:/usr/local/apache-ant-1.8.2/bin"
export PATH
/usr/bin/
上書きしたくないバイナリに加えて、通常は別のバイナリがあるため、以前のバージョンをエクスポートする必要があります。/usr/sbin/
ant/bin/
ant
問題は、入力するとwhich ant
出てくるということです。そのため、最新バージョンを使用するように/usr/bin/
名前を変更しました。/usr/bin/ant
/usr/bin/ant-old
これが動作している間にシステムバイナリを置き換えるより良い方法があるかどうか疑問に思います(主に最後の名前の変更を避けるため)。
ベストアンサー1
システムバイナリの交換は最後の手段でなければなりません。
私の提案は次のとおりです
- 他のシステムディレクトリと一緒に配置してください
/usr/local/bin
。/usr/bin
PATH
/usr/local/bin/ant
へのシンボリックリンクを作成します/usr/local/apache-ant-1.8.2/bin/ant
。/usr/local/apache-ant-1.8.2/bin
最初に含めないでください。PATH
この方法:
- カスタマイズ
/usr/local/bin
はシステムのデフォルトを上書きします。 - シンボリックリンクは、
/usr/local/bin/ant
そのバージョンをどこで入手したかを示しますant
。 - デフォルト設定で何かをテストするには、テスト中に設定
/usr/local/bin
からその設定を削除します。PATH