macportsパッケージのすべての未使用バージョンを一度にアンインストールする方法


32

macportsパッケージを保守する場合、古いパッケージを新しいものと置き換えるときに古いパッケージを削除することを好みます。ただし、パッケージがアップグレードされるにつれて、次のような問題が発生します。

$ sudo port uninstall -f postgresql83
--->  The following versions of postgresql83 are currently installed:
--->    postgresql83 @8.3.3_0
--->    postgresql83 @8.3.7_0
--->    postgresql83 @8.3.8_1 (active)
Error: port uninstall failed: Registry error: Please specify the full version as recorded in the port registry.

パッケージのすべてのバージョンを一度に削除するmacportsコマンドはありますか?

回答:


38

すべての古い(非アクティブ)バージョンをアンインストールする場合は、これを試してください:

port -y -u uninstall
  # if you like what you see, change “port -y” to “sudo port”

(たとえば)postgresql83ポートのすべてのバージョン(非アクティブおよびアクティブ)をアンインストールする場合は、これを試してください。

port -y uninstall installed and postgresql83
  # if you like what you see, change “port -y” to “sudo port”

それは私にとってはうまくいきましたが、あまりにも悪いポートはpostgres84への依存関係の更新を自動的に処理しません。
デイナ正気

2
@Dana the Sane postgres84に依存するパッケージを自動的に削除する場合は、-follow-dependents引数を使用できます。
ニック

@Nick次回何かをアンインストールするときに、それを試してみます。
ダナ正気

第2のアプローチは、私のために罰金を動作しますが、との最初のものは-u、私が使用していなかったかのように複数のバージョンがインストールされているほぼ同じ警告を与えるようで-u全然
Bマット

これらのコマンドは機能しません(Mac OSX Mavericks)。
bzero

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.