#shell #sh
#оболочка #sh
Вопрос:
Для этой функции:
homebrewinstall()
{
if which brew 2> /dev/null; then
return 0
else
return 1
fi
}
homebrewinstall
Всегда выводит местоположение:
$ /usr/local/bin/brew
Есть ли способ сделать эту тестовую заготовку бесшумной?
Комментарии:
1.
if
Оператор избыточен;homebrewinstall () { which brew > /dev/null; }
.2. Кроме того, встроенная команда
type -p brew
выполнит ту же задачу без запуска внешней командыwhich
.
Ответ №1:
Вы используете 2>
оператор, который является файловым дескриптором перенаправления 2 (stderr). which
Команда отправляет свои выходные данные в стандартный вывод. Попробуйте использовать >
вместо 2>
.