すべての Web アプリケーション依存関係が仮想環境にインストールされていることを確認するために、スーパーユーザー環境内のすべての Django パッケージをアンインストールしようとしています。
sudo su
sudo pip freeze | grep -E '^django-' | xargs pip -q uninstall
しかし、pip はすべてのパッケージのアンインストールを確認しようとしますが、pip にはオプションがないようです-y
。Python モジュールのバッチをアンインストールするより良い方法はありますか?rm -rf .../site-packages/
適切な方法ですか? easy_install の代替手段はありますか?
pip --upgrade install
あるいは、システムのPythonモジュールに頼って依存関係を満たすのではなく、すべての依存関係を仮想環境にインストールするようにpipを強制する方が良いでしょうか。同じくらい古いシステムモジュールを上書きするために、インストールするバージョンを制限しました。仮想環境をアクティブ化して試したところpip install --upgrade -r requirements.txt
、システムパスに存在するものも含めて依存関係がインストールされたようですが、システムモジュールが古いためかどうかはわかりません。また、man pip
この動作は保証されていないようです(つまり、同じシステム site-packages に既に存在するパッケージのバージョン。
ベストアンサー1
pipバージョン7.1.2以降では、pip uninstall -y <python package(s)>
pip uninstall -y package1 package2 package3
またはファイルから
pip uninstall -y -r requirements.txt