Lista över alla paket installerade med Homebrew

Är det möjligt och hur får jag en lista över alla paket installerade på min Mac med Homebrew? Jag är inte intresserad av paket installerade utanför Homebrew.

Svar

brew list och brew list --cask

Om du kör brew list visas en lista över alla dina installerade Homebrew-paket.

Dessutom kommer brew list --cask att tillhandahålla de objekt som installerats med Homebrew Cask .

brygglista

Kommentarer

  • Om du hade listan i en txt-fil. Hur skulle du installera dem alla? brew install < list.txt fungerar inte '.
  • @Jonathan xargs brew install < list.txt Ställ gärna en separat fråga för mer information eller förtydligande.
  • @grgarside – älskar din terminalprompt. skulle du vara villig att dela dina konfigurationsfiler för att få min uppmaning att se ut så?
  • @Kaushik I ' har äntligen skrivit ett blogginlägg om min terminal / shell-inställning – gärna ställa frågor där.
  • Använd brew list --formulae om brew list är blockerad

Svar

brew leaves visar alla toppnivåpaket. Det är paket som inte är beroende. Detta borde vara det mest intressanta om du använder listan för att installera om paket.

Svar

brew bundle kan också vara intressant om du frågar för att du vill hantera din brygginstallation. Detta inkluderar fat, som brew list inte gör det. Det syftar till att ha reproducerbara Homebrew-inställningar.

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

Du kan använda flaggan --global för att använda din ~/.Brewfile och -f/--force för att tvinga överskrivning av din befintliga fil (för installation kommer detta att tvinga bort avinstallation av icke-listade paket).

Kommentarer

  • En ny dumpning av mig föreslår att bundle nu utesluter beroenden. Det finns några andra ändringar som citatstil och ordning som gör det svårare att förstå skillnaden, men totalt sett ser det ut som om åtminstone vissa bibliotek saknas från Brewfile men installerade.

Svar

Exekvering av brew list -kommandot visar en enkel, alfabetiskt sorterad lista över alla installerade paket.

Olika obligatoriska paket (beroenden) installeras dock automatiskt när du installerar ett paket med Homebrew. Det är möjligt att se listan över alla installerade paket som ett snyggt formaterat beroendeträd. För att visa det, kör följande kommando:

brew deps --tree --installed

Ett exempel på utdata är som visas nedan:

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

De oberoende listade paketen (t.ex. gdbm och openssl i exemplet ovan) har inga beroenden. Paketen som visas som en del av en trädstruktur har deras beroende beroende på omedelbar lägre nivå (t.ex. paket sqlite kräver att paketet readline installerad). De paket som anges i bladnoder i trädstrukturerna har inga beroenden.

Beroenden som visualiseras i en trädstruktur kan hjälpa till att enkelt bli av med onödiga paket.

Svar

Du kan använda brew list | grep "package-name" eller om du letar efter ett specifikt paket.
brew list "package-name" fungerar också och ger ytterligare information.

Svar

Övrigt har nämnt brew leaves, som listar saker som inte är beroende, och brew deps --tree --installed som visar beroendeträdet för alla installerade paket.

Jag tycker att den mest användbara utgången av alla svar än är kombinationen av dessa.

 brew deps --tree $(brew leaves)  

Detta visar hela trädet för din brygginstallation.

Svar

För att se bryggpaket:

brew list 

För att se fatpaket:

brew list --cask 

För att se uppgraderbara bryggpaket:

brew outdated 

För att se uppgraderbara cask-paket

brew outdated --cask 

Svar

Du kan använda detta kodavsnitt för att lista alla installerade paket och sortera efter deras storlek.

 brew list --formula | \ xargs -n1 -P8 -I {} \ sh -c " brew info {} | \ egrep "[0-9]* files, " | \ sed "s/^.*[0-9]* files, \(.*\)).*$/{} \1/" " | \ sort -h -r -k2 - | \ column -t  

Lämna ett svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *