pipenv
私のsには2つのバージョンがあります$PATH
。
$ where pipenv
/usr/local/Caskroom/miniconda/base/bin/pipenv #1
/usr/local/bin/pipenv #2
pipenv
#1を隠し、#2が優先順位を持つようにしたいと思います。
/usr/local/Caskroom/miniconda/base/bin
以前に保管してください。/usr/local/bin
$PATH
alias pipenv='/usr/local/bin/pipenv'
いいえ- no running
mv /usr/local/Caskroom/miniconda/base/bin/pipenv{,.bak}
、
またはrm /usr/local/Caskroom/miniconda/base/bin/pipenv
(conda は将来の Pipenv のアップグレード時にその場所に Pipenv を再インストールします)
またはpipenv
#1 (一部の conda パッケージの依存関係) を削除する
などの操作を実行します。
どうすればいいですか?
答え1
たとえば、別のディレクトリ~/bin
をに配置しますPATH
。pipenv
そのディレクトリに目的のディレクトリへのシンボリックリンクを作成します。たとえば、
- 次の行を次の行に入れます
.profile
。PATH=~/bin:$PATH
- 以下を一度実行してください。
mkdir ~/bin ln -s /usr/local/bin/pipenv ~/bin
pipenv
必要に応じて動的に呼び出す項目を選択することもできます。 (たとえば、ホームディレクトリが複数のコンピュータ間で共有され、異なるコンピュータで異なるデフォルトディレクトリを使用したいpipenv
場合、またはデフォルトディレクトリを選択する便利な方法が必要な場合pipenv
。)これを行うには、シンボリックリンクの代わりに、作成して実行可能にします(chmod +x ~/bin/pipenv
)。
#!/bin/sh
if [ -x /usr/local/bin/pipenv ]; then
pipenv=/usr/local/bin/pipenv
elif [ -x /usr/local/Caskroom/miniconda/base/bin/pipenv ]; then
pipenv=/usr/local/Caskroom/miniconda/base/bin/pipenv
else
pipenv=/usr/bin/pipenv
fi
exec $pipenv "$@"