Comment dire si homebrew est installé sur Mac OS X
je fais de la programmation sur Rails et je vois régulièrement Homebrew référencé dans des solutions autour du web mais je ne l'ai jamais utilisé.
je remarque aussi Homebrew dans la version de terminal 2.9 comme une option à côté de "Shell - > nouveau" de la chute de terminal mais quand je sélectionne homebrew et les commandes d'émission, ils échouent.
généralement avec l'erreur "commande non trouvée".
étrangement, je n'ai pas pu trouver une simple commande pour déterminer si brew est installé ou pas.
Comment puis-je vérifier si Homebrew est déjà installé sur mon Mac?
8 réponses
brew help
. Si brew est là, vous obtenez la sortie. Dans le cas contraire, vous obtiendrez la commande "not found". Si vous avez besoin de vérifier dans un script, vous pouvez travailler sur la façon de rediriger la sortie et vérifier $?
.
Le standard moyen de déterminer si quelque chose est installé est d'utiliser which
.
si Brew est installé.
>>> which brew
/usr/local/bin/brew
si Brew n'est pas installé.
>>> which brew
brew not found
Note: le message" not installed " dépend de votre interpréteur de commandes.
zsh
est indiqué ci-dessus.bash
sera tout simplement pas imprimer quoi que ce soit.csh
direbrew: Command not found.
dans le cas" installé", tous les shells imprimeront le chemin.)
Il fonctionne avec tous les programmes en ligne de commande. Essayez which grep
ou which python
. Comme il vous indique le programme que vous exécutez, il est utile lors du débogage ainsi.
je l'utilise pour exécuter une mise à jour ou d'installer:
which -s brew
if [[ $? != 0 ]] ; then
# Install Homebrew
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
else
brew update
fi
je tape juste brew-v dans le terminal si vous l'avez il répondra avec le numéro de version installé.
which
est la façon la plus courante de vérifier si un programme est installé, il va vous dire un programme est installé, SEULEMENT si c'est dans le $PATH
. Donc, si votre programme est installé, mais le $PATH
n'était pas mis à jour pour quelque raison que ce soit*, which
vous dira que le programme n'est pas installé.
(*Un exemple de scénario est en train de changer de Bash pour Zshell et ~/.zshrc
ne pas avoir les vieux $PATH
~/.bash_profile
)
command -v foo
est une meilleure alternative à which foo
. command -v brew
sortie rien si Homebrew n'est pas installé
command -v brew
voici un exemple de script pour vérifier si Bash est installé, l'installer s'il ne l'est pas, le mettre à jour s'il l'est.
if [[ $(command -v brew) == "" ]]; then
echo "Installing Hombrew"
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
else
echo "Updating Homebrew"
brew update
fi
brew doctor
vérifie si Homebrew est installé et fonctionne correctement.
[ ! -f "`which brew`" ] && echo "not installed"
Explication: Si la bière n'est pas installée, exécutez la commande après &&
une Autre méthode possible:
# Check if Ninja is installed
if ! which ninja > /dev/null
then
echo 'Ninja installation...'
brew install ninja
fi