Cách gỡ cài đặt tất cả các phiên bản chưa sử dụng của gói macports cùng một lúc


32

Khi duy trì các gói macports, tôi thích loại bỏ các gói cũ khi thay thế chúng bằng các gói mới. Tuy nhiên, theo thời gian khi các gói được nâng cấp, bạn sẽ gặp phải các vấn đề như:

$ 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.

Có lệnh macports để loại bỏ tất cả các phiên bản của một gói không?

Câu trả lời:


38

Nếu bạn muốn gỡ cài đặt tất cả các phiên bản cũ (không hoạt động), hãy thử điều này:

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

Nếu bạn muốn nói rằng bạn muốn gỡ cài đặt tất cả các phiên bản (không hoạt động và hoạt động) của (ví dụ) postgresql83cổng, thì hãy thử điều này:

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

Điều đó làm việc cho tôi, cổng quá xấu không tự động xử lý các cập nhật phụ thuộc vào postgres84.
Dana the Sane

2
@Dana the Sane Nếu bạn có nghĩa là tự động loại bỏ các gói phụ thuộc vào postgres84, bạn có thể sử dụng đối số --follow-Depents.
Nick

@Nick Tôi sẽ thử lần sau khi tôi gỡ cài đặt thứ gì đó.
Dana the Sane

Cách tiếp cận thứ hai hoạt động tốt đối với tôi, nhưng một trong những đầu tiên với -udường như cung cấp cho các cảnh báo tương tự về nhiều phiên bản được cài đặt như thể tôi đã không được sử dụng -uở tất cả
matt b

Các lệnh này không hoạt động (trên Mac OSX Mavericks).
bzero

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.