답변:
당신이 사용할 수있는
brew ls --versions myformula
각 공식의 설치된 버전을 출력합니다. 수식이 설치되어 있지 않으면 출력이 비어 있습니다.
에서 얻을 수있는 최신 버전의 homebrew를 사용하는 brew update
경우 다음을 실행하면됩니다 (Slaven에게 감사드립니다).
if brew ls --versions myformula > /dev/null; then
# The package is installed
else
# The package is not installed
fi
즉, 각 홈브류 패키지를 확인하는 것뿐만 아니라 도구의 존재를 확인하는 것이 좋습니다 (예 :에서 실행 파일 검색 $PATH
). 사람들은 실제로 많은 방법으로 도구를 설치하는 경향이 있으며 homebrew는 그중 하나 일뿐입니다.
if macchanger --help > /dev/null; then
하면 macchanger
설치되어 있는지 확인 합니까?
macchanger
하면 현재 쉘의 $PATH
. 실패하면 PATH에서 사용할 수 없거나 설치되지 않습니다.
which -s
. -s
옵션 (자동)는으로 "어떤 출력을 -s없는 아무 것도 발견되지 않으면, 단지 1을 실행 파일 중 하나가 발견되면 0을 반환하거나."설명되어 있습니다 적절한 사용은 같은 것입니다which macchanger || echo "macchanger not on PATH"
이건 어떤가요?
for pkg in macvim ngrep other needed packages; do
if brew list -1 | grep -q "^${pkg}\$"; then
echo "Package '$pkg' is installed"
else
echo "Package '$pkg' is not installed"
fi
done
python@3
로 설치되고 나열된 것과 같은 일부 버전이 지정된 공식에서 작동하지 않습니다 python3
.
# install if we haven't installed any version
brew ls --versions $lib || brew install $lib
# install if we haven't installed latest version
brew outdated $lib || brew install $lib
brew --cellar "$formula" >/dev/null 2>&1
--cellar formula: Display the location in the cellar where formula would be installed, without any sort of versioned directory as the last path.
brew man 페이지 ; 답변으로주고 사랑을 것이다