Usando bash, voglio controllare se gli strumenti della riga di comando sono installati.
Attualmente sono e quando digito xcode-select --install
ottengo:
xcode-select: error: command line tools are already installed, use "Software Update" to install updates It appears Homebrew is already installed. If your intent is to reinstall you should do... blah blah blah
Fondamentalmente il mio problema è che ho diversi metodi per controllare in bash (usando if / fi
) ma non so quale sia la soluzione migliore.
1) Posso fare xcode-select -p
e questo restituisce il percorso /Library/Developer/CommandLineTools
, ma come dovrei creare l'istruzione if
? Non so cosa verrà presentato quando CLT non è installato.
2) Posso fare xcode-select --version
. Dovrei quindi grep
per una frase version
da quando ottengo
xcode-select version 2343.
3) Posso fare which xcode-select
ma, di nuovo, in tutti i casi non sono sicuro di come dovrebbe apparire if
. Penso anche che grep
non sia il modo migliore, dal momento che in futuro l'output potrebbe essere diverso nella versione futura di OSX.
Per riassumere vorrei qualcosa come
#!/bin/bash
if [ no idea ]; then
#installed, nothing to do...
else
xcode-select --install
fi
Grazie per eventuali suggerimenti.