En una vena similar a Hans Fredric, aquí hay un fragmento que realmente uso yo mismo. El aspecto gracioso <(cmd)
es la sustitución de comandos de Bash.
alias strip-empty="egrep -v '^\s*$'"
NOT_INSTALLED=$(comm -23 <(sort < apps.local) <( brew list --versions | awk '{print $1}' ) | strip-empty)
while read FORMULA; do
brew install "$FORMULA"
done <<< "$NOT_INSTALLED"
Aquí, apps.local
es solo una lista de aplicaciones para instalar, una por línea. La mejora sobre simplemente hacer un bucle sobre cada aplicación e intentar algo como brew_install
básicamente se reduce a la velocidad. Invocar brew list
es lento (como hasta un segundo), así que solo hago la prueba una vez enumerando todas las aplicaciones instaladas. La diferencia es muy notoria si tienes > 5 aplicaciones.
Si necesitas algo con la misma velocidad, pero que funcione igual de bien con aplicaciones instaladas usando un cask, necesitas algo más elaborado (como esto).
1 votos
Si no es crítico obtener esta información de Homebrew, y no te importa cómo se instaló,
which
es más rápido quebrew list
.