Я создаю скрипт BASH, который требует установки нескольких приложений. ffmpeg
и sox
Найдите место установки пива на OS X
Чтобы убедиться, что они находятся в месте, когда мой сценарий работает, я сначала проверить для установки Homebrew с:
#!/bin/bash
which -s brew
if [[ $? != 0 ]] ; then
# Install Homebrew
/usr/bin/ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homebrew/go/install)"
fi
Затем я проверяю, что sox
и ffmpeg
установлены с:
echo "---- checking for sox ----"
which -s sox || /usr/local/bin/brew install sox
echo "---- checking for ffmpeg ----"
which -s ffmpeg || /usr/local/bin/brew install ffmpeg
Проблема, с которой я столкнулась, - это когда Homebrew установлен, но находится в нестандартном месте.
Я должен использовать полный путь к Homebrew, потому что этот скрипт запускается в пределах Playtypus.
Вопрос: Как я могу надежно установить установленный путь Homebrew в сценарий BASH?
Не можете ли вы просто поймать исходное выражение 'which' и grep/awk/regex на его результате? :) Или просто прямое прямое сообщение –
Да, но это привело к появлению сообщений об ошибках, которые будут отображаться в моем скрипте. Однако вы дали мне вдохновение. См. Мой ответ ниже. – dwkns
Вы используете что-то вроде 'var = $ (which -s brew)'? –