Câu trả lời:
brew list
và brew cask list
Chạy brew list
sẽ hiển thị danh sách tất cả các gói Homebrew đã cài đặt của bạn.
Ngoài ra, brew cask list
sẽ cung cấp các mục được cài đặt bằng Homebrew Cask .
xargs brew install < list.txt
Hãy hỏi một câu hỏi riêng để biết thêm chi tiết hoặc làm rõ.
brew install $(< list.txt )
brew leaves
hiển thị cho bạn tất cả các gói cấp cao nhất. Đó là các gói không phụ thuộc. Điều này sẽ thú vị nhất nếu bạn đang sử dụng danh sách để cài đặt lại các gói.
leaves
.
java
không được liệt kê trong leaves
đó vì nó phụ thuộc vào dự án khác mặc dù tôi đã tự cài đặt nó.
brew bundle
cũng có thể thú vị nếu bạn đang hỏi bởi vì bạn muốn quản lý cài đặt bia của bạn. Điều này bao gồm các thùng, mà brew list
không. Nó nhằm mục đích có các thiết lập Homebrew có thể tái tạo.
# creates Brewfile in the current directory from currently-installed packages
brew bundle dump
# edit Brewfile
# install everything from the Brewfile
brew bundle
Bạn có thể sử dụng --global
cờ để hoạt động trên ~/Brewfile
và -f
buộc ghi đè tệp hiện có của bạn (để cài đặt, điều này sẽ buộc gỡ cài đặt các gói không được liệt kê).
brew leaves
và bỏ qua các gói bạn không cài đặt trực tiếp, nhưng chỉ nhận được dưới dạng phụ thuộc. Trong tương lai, một gói có thể thay đổi phụ thuộc, nhưng dù sao bạn cũng sẽ cài đặt nó và không cần nó.
bundle
bây giờ loại trừ phụ thuộc. Có một số thay đổi khác như kiểu trích dẫn và thứ tự khiến cho việc hiểu khác biệt trở nên khó khăn hơn, nhưng nhìn chung có vẻ như ít nhất một số thư viện bị thiếu Brewfile
nhưng được cài đặt.
brew list
Lệnh thực thi hiển thị một danh sách đơn giản, được sắp xếp theo thứ tự abc của tất cả các gói được cài đặt.
Tuy nhiên, các gói yêu cầu khác nhau (phụ thuộc) sẽ tự động được cài đặt khi cài đặt gói bằng Homebrew. Có thể xem danh sách tất cả các gói được cài đặt dưới dạng cây phụ thuộc được định dạng độc đáo. Để xem nó, thực hiện lệnh sau:
brew deps --tree --installed
Một ví dụ đầu ra như dưới đây:
gdbm
openssl
python
├── gdbm
├── openssl
├── readline
├── sqlite
│ └── readline
└── xz
readline
sqlite
└── readline
xz
Các gói được liệt kê độc lập (ví dụ gdbm
và openssl
trong ví dụ đầu ra ở trên) không có phụ thuộc. Các gói được mô tả như là một phần của cấu trúc cây có sự phụ thuộc của chúng được liệt kê ở mức thấp hơn ngay lập tức (ví dụ: gói sqlite
yêu cầu gói readline
phải được cài đặt). Các gói được liệt kê tại các nút lá trong cấu trúc cây không có phụ thuộc.
Sự phụ thuộc được hình dung trong một cấu trúc cây có thể giúp dễ dàng loại bỏ các gói không cần thiết.
brew leaves
lệnh nêu trên là hữu ích trong vấn đề này; nó chỉ liệt kê các gói cấp cao nhất.
Bạn có thể sử dụng brew list | grep 'package-name'
hoặc nếu đang tìm kiếm gói cụ thể.
brew list 'package-name'
cũng hoạt động và cung cấp thêm thông tin.
brew install < list.txt
dường như không hoạt động.