Er det mulig og hvordan får jeg en liste over alle pakkene som er installert på min Mac ved hjelp av Homebrew
? Jeg er ikke interessert i pakker som er installert utenfor Homebrew.
Svar
brew list
og brew list --cask
Kjører brew list
viser en liste over alle dine installerte Homebrew-pakker.
I tillegg vil brew list --cask
levere elementene som er installert ved hjelp av Homebrew Cask .
Kommentarer
Svar
brew leaves
viser deg alle pakker på toppnivå. Det er pakker som ikke er avhengigheter. Dette bør være det mest interessante hvis du bruker listen til å installere pakker på nytt.
Svar
brew bundle
kan også være interessant hvis du spør om du vil administrere bryggeinstallasjonen. Dette inkluderer fat, som brew list
ikke gjør det. Det er rettet mot å ha reproduserbare Homebrew-oppsett.
# creates Brewfile in the current directory from currently-installed packages brew bundle dump # edit Brewfile # install everything from the Brewfile brew bundle
Du kan bruke --global
-flagget til å betjene ~/.Brewfile
og -f/--force
for å tvinge overskriving av din eksisterende fil (for installasjon vil dette tvinge avinstallering av ikke-oppførte pakker).
Kommentarer
- En nylig dump av meg antyder at
bundle
nå ekskluderer avhengigheter. Det er noen andre endringer som tilbudstil og bestilling som gjør det vanskeligere å forstå forskjellen, men generelt ser det ut til at i det minste noen biblioteker mangler fraBrewfile
men installert.
Svar
Å utføre brew list
kommando viser en enkel, alfabetisk sortert liste over alle de installerte pakkene.
Imidlertid blir forskjellige nødvendige pakker (avhengigheter) automatisk installert når du installerer en pakke med Homebrew. Det er mulig å se listen over alle de installerte pakkene som et pent formatert avhengighetstre. For å se det, utfør følgende kommando:
brew deps --tree --installed
Et eksempel på utdata er som vist nedenfor:
gdbm openssl python ├── gdbm ├── openssl ├── readline ├── sqlite │ └── readline └── xz readline sqlite └── readline xz
De uavhengig oppførte pakkene (f.eks. gdbm
og openssl
i eksemplet ovenfor) har ingen avhengigheter. Pakningene som er avbildet som en del av en trestruktur har sin avhengighet oppført på umiddelbart lavere nivå (f.eks. Pakke sqlite
krever at pakken readline
installert). Pakkene som er oppført ved bladnoder i trestrukturene, har ingen avhengigheter.
Avhengigheter visualisert i en trestruktur kan hjelpe deg med å bli kvitt unødvendige pakker.
Svar
Du kan bruke brew list | grep "package-name"
eller hvis du leter etter en spesifikk pakke.
brew list "package-name"
fungerer også og gir tilleggsinformasjon.
Svar
Annet har nevnt brew leaves
, som viser ting som ikke er avhengigheter, og brew deps --tree --installed
som viser avhengighetstreet for alle installerte pakker.
Jeg finner den mest nyttige utgangen av alle svar ennå, er kombinasjonen av disse.
brew deps --tree $(brew leaves)
Dette viser hele treet til bryggeinstallasjonen.
Svar
For å se brygpakker:
brew list
For å se fatpakker:
brew list --cask
For å se oppgraderbare brygpakker:
brew outdated
For å se oppgraderbare fatpakker
brew outdated --cask
Svar
Du kan bruke denne kodebiten til å liste opp alle installerte pakker og sortere etter deres størrelse.
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
brew install < list.txt
virker ikke ' t.xargs brew install < list.txt
Still gjerne et eget spørsmål for mer informasjon eller avklaring.brew list --formulae
hvisbrew list
er blokkert