Làm cách nào tôi có thể xóa các phiên bản cài đặt đã lỗi thời của các gói Homebrew?


Câu trả lời:


333

Lệnh dọn dẹp ( brew cleanup) sẽ loại bỏ các phiên bản gói đã cài đặt lỗi thời. Để ảnh hưởng đến một gói / công thức cụ thể, bạn có thể cung cấp một tên công thức như vậy : brew cleanup $FORMULA. Để mô phỏng dọn dẹp, tức là xem những gì sẽ bị xóa, bạn có thể sử dụng -ntùy chọn : brew cleanup -n.


31
Đối với hồ sơ: brew cleanupchỉ dọn dẹp lỗi thời các phiên bản gói nếu bạn có phiên bản mới nhất được cài đặt, vì vậy đầu tiên brew upgradesau đóbrew cleanup
Jan

38
Thánh lồn Điều đó chỉ mang lại cho tôi nhiều hơn 3G trở lại. Ai biết được
Alper

38
This operation has freed approximately 17.2GB of disk space.
fvss

11
CHÚA ƠI! Tôi vừa lấy lại được hơn 12GB dung lượng. WooHoo!
Richard Hurt

3
Ồ, giá trị của một năm upgrademà không có cleanupkết quả là 17,6GB phần mềm không sử dụng cho tôi! (Kiểm tra cái này với brew cleanup -ncái mà không xóa bất cứ thứ gì.) Cảm ơn câu trả lời này. :)
Erik

80

@ aknuds1 là đúng brew cleanupvì vậy tôi sẽ chỉ thêm rằng tôi có một bí danh trong ~/.profileđó có tất cả các công việc dọn dẹp liên quan đến bia của tôi, bao gồm cập nhật / dọn dẹp thùng

alias brewski='brew update && brew upgrade && brew cleanup; brew doctor'

Tôi kết thúc brew doctorđể đảm bảo tất cả các gói được liên kết chính xác, ví dụ, awsclidường như có vấn đề với điều này thường xuyên vì vậy tôi liên tục phải hủy liên kết / đăng lại. Hi vọng điêu nay co ich.


EDIT: Như đã được chỉ ra cho tôi trong các bình luận, brew caskchức năng đã được hợp nhất vào lõi homebrew. Các lệnh này cũng đã ném lỗi, vì vậy các tham chiếu brew caskđã bị xóa.

EDIT2: Khi tôi chạy nó hàng ngày, tôi nhận thấy bình luận sau đây ngày hôm nay. Tôi đã cập nhật lệnh cho phù hợp

    Warning: We decided to not change the behaviour of `brew upgrade` so
    `brew upgrade --all` is equivalent to `brew upgrade` without any other
    arguments (so the `--all` is a no-op and can be removed).

3
Bạn không cần phải làm brew upgrade brew-casknữa vì yêu cầu kéo brew update này cũng sẽ tự động nâng cấp thùng homebrew-thùng.
Lantrix

1
@Lantrix Cảm ơn bạn đã cập nhật. Tôi đã chỉnh sửa câu trả lời của mình để phản ánh sự thay đổi này.
SaxDaddy

2
brew upgrade --cleanupsẽ loại bỏ các gói cũ khi các gói mới được cài đặt.
Zenexer

Tôi không khuyên bạn nên sử dụng brew upgrademà thay vào đó hãy sử dụng brew outdatedvà sau đó nâng cấp từng gói trong số brew upgrade PACKAGEđó bằng cách bạn có quyền kiểm soát nhiều hơn
Pedro Luz

brew upgrademột lệnh duy nhất để nâng cấp tất cả các gói, nó hoạt động tốt cho tự động hóa. Tùy chọn, bạn có thể pinđóng gói các phiên bản bạn muốn giữ và nâng cấp tất cả phần còn lại cùng một lúc.
SaxDaddy

34

Chỉ dành cho các bản ghi, bạn có thể xóa các phiên bản lỗi thời của các gói mà bạn sắp nâng cấp bằng cờ --cleanup:

brew upgrade --cleanup <package_name>

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.