Homebrew를 사용하여 설치된 모든 패키지 목록


448

를 사용하여 Mac에 설치된 모든 패키지 목록을 얻는 방법과 방법은 Homebrew무엇입니까? Homebrew 외부에 설치된 패키지에는 관심이 없습니다.

답변:


563

brew listbrew cask list

실행 brew list하면 설치된 모든 Homebrew 패키지 목록이 표시됩니다.

또한 Homebrew Cask를brew cask list 사용하여 설치된 항목을 제공합니다 .

추출 목록


2
이 목록이 txt 파일 인 경우 그것들을 모두 설치하는 방법은 무엇입니까? brew install < list.txt작동하지 않는 것 같습니다.
Jonathan

26
@Jonathan xargs brew install < list.txt자세한 내용이나 설명은 별도 문의하십시오.
grg

3
@ grgarside-터미널 프롬프트를 좋아하십시오. 프롬프트가 표시되도록 구성 파일을 기꺼이 공유 하시겠습니까?
Kaushik Gopal

2
@Kaushik 마지막으로 터미널 / 쉘 설정 에 관한 블로그 게시물을 작성했습니다 . 질문이 있으면 언제든지 문의하십시오.
grg

1
@ 조나단brew install $(< list.txt )
필 pirozhkov

279

brew leaves모든 최상위 패키지를 보여줍니다. 그것은 의존성이 아닌 패키지입니다. 목록을 사용하여 패키지를 다시 설치하는 경우 가장 흥미 롭습니다.


3
좋은 대답입니다. 사용자가 설치 한 패키지 목록을 얻는 방법을 알고 있습니까? 와 다를 수 있습니다 leaves.
Steven Shaw

예, 예를 들어 직접 설치했지만 다른 프로젝트에 종속 java되어 leaves있기 때문에 목록에 없습니다 .
Saad Malik

61

brew bundle추출 설치를 관리하려고하므로 요청하는 경우에도 흥미로울 수 있습니다. 여기에는 통이 포함되지만 brew list그렇지 않습니다. 재현 가능한 Homebrew 설정을 목표로합니다.

# creates Brewfile in the current directory from currently-installed packages
brew bundle dump
# edit Brewfile
# install everything from the Brewfile
brew bundle

--global플래그를 사용하여 작업 을 수행 ~/Brewfile하고 -f기존 파일을 강제로 덮어 쓸 수 있습니다 (설치의 경우 목록에없는 패키지를 강제로 제거합니다).


이것은 우수하다! 나는 이것이 존재하는지 전혀 몰랐다. 감사합니다. 나는 brew leaves당신이 직접 설치하지 않았지만 의존성 만 가진 패키지와 같았고 생략하기를 바랐습니다. 나중에 패키지는 종속성을 변경할 수 있지만 어쨌든 설치할 것이므로 필요하지 않습니다.
Bruno Bronosky

예. 모든 패키지 관리자가이 두 가지를 차별화하지 않는이 단계를 거친 것 같습니다.
Sam Brightman

1
최근 광산 덤프에 따르면 bundle이제 종속성이 제외됩니다. 인용 스타일 및 순서와 같은 다른 변경 사항으로 인해 diff를 이해하기 어렵지만 전반적으로 적어도 일부 라이브러리가 누락 Brewfile되었지만 설치 된 것처럼 보입니다 .
Sam Brightman

20

실행 brew list명령은 설치된 모든 패키지의 알파벳순으로 정렬 된 간단한 목록을 보여줍니다.

그러나 Homebrew를 사용하여 패키지를 설치할 때 다양한 필수 패키지 (종속성)가 자동으로 설치됩니다. 설치된 모든 패키지 목록을 형식이 지정된 종속성 트리로 볼 수 있습니다. 이를 보려면 다음 명령을 실행하십시오.

brew deps --tree --installed

출력 예는 다음과 같습니다.

gdbm

openssl

python
├── gdbm
├── openssl
├── readline
├── sqlite
│   └── readline
└── xz

readline

sqlite
└── readline

xz

독립적으로 나열된 패키지 (예 gdbmopenssl상기 실시 예에서 출력)의 종속성이 없다. 트리 구조의 일부로 묘사 된 패키지는 종속성이 즉각적으로 낮은 수준으로 나열됩니다 (예 : 패키지 sqlite는 패키지 readline를 설치해야 함). 트리 구조의 리프 노드에 나열된 패키지는 종속성이 없습니다.

트리 구조로 시각화 된 종속성은 불필요한 패키지를 쉽게 제거하는 데 도움이 될 수 있습니다.


1
brew leaves상술 한 명령이 점에서 유용하다; 최상위 패키지 만 나열합니다.
Paul Bissex

6

brew list | grep 'package-name'특정 패키지를 사용 하거나 찾고있는 경우
brew list 'package-name'또한 작동하며 추가 정보를 제공합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.