Я пишу bash-скрипт, который я тестирую на OS X, хотя в конечном итоге он будет работать в стандартной среде Linux и столкнется со странной ошибкой.
У меня есть такие тесты в моем сценарии:
if [ ! -w $BP ]; then
echo "'$1' not writable"
exit 1
fi
Что мне кажется довольно вменяемым и прекрасно работает под Linux, но при попытке тестирования на OS X я получаю следующее сообщение об ошибке:
startSvr.sh: строка 135: [: отсутствует `] 'startSvr.sh: строка 135: -w: команда не найдена
Так это тот случай, когда OS X не поддерживает тест -w
или есть какая-то другая причина, по которой это не работает для меня? например, среда