which프로그램이 설치되어 있는지 확인하는 가장 일반적인 방법 이지만 , .NET Framework에있는 경우에만 프로그램이 설치되었음을 알려줍니다 $PATH. 따라서 프로그램이 설치되었지만 $PATH어떤 이유로 든 업데이트되지 않은 경우 *, which프로그램이 설치되지 않았 음을 알려줍니다.
(* 하나의 예제 시나리오는 Bash에서 Zshell로 변경되고 ~/.zshrc이전 버전 $PATH은 없습니다. ~/.bash_profile)
command -v foo에 대한 더 나은 대안 which foo입니다. command -v brewHomebrew가 설치되어 있지 않으면 아무것도 출력하지 않습니다.
command -v brew
다음은 Homebrew가 설치되어 있는지 확인하고, 설치되어 있지 않으면 설치하고, 설치되어 있으면 업데이트하는 샘플 스크립트입니다.
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