Я только что установил PHP на Ubuntu Natty из исходников.
Я пытаюсь использовать PECL для установки дополнительных модулей, таких как APC и Memcache. Я использую что-то вроде этого:
pecl install apc
Однако я получаю запросы с просьбой подтвердить некоторые вещи.
Как я могу использовать команду pecl, чтобы просто принять значения по умолчанию? Я видел , что - то вроде этого на доске объявлений: printf "yes\n" | pecl install pecl_http
. Однако в случае APC это ответит «да», если по умолчанию установлено «нет» (я думаю).
Заранее спасибо.
RUN pecl install apc
во время сборки, вы автоматически выбираете значения по умолчанию.Ответы:
Следующий код вроде работает нормально:
printf "\n" | pecl install apc
Вы также можете заменить apc любым другим пакетом PECL.
Ура.
источник
yes | pecl install memcache
- хотя я полагаю, что ваше решение лучше работает для пакетов, где по умолчанию установлено что-то иное, чем «да»,Команда «да» может делать больше, чем просто набирать «да»; он может печатать все, что угодно, снова и снова. Включая пустую строку, что является хорошим способом принять значения по умолчанию.
Мне это просто нужно было самому, поэтому вот что сработало для меня:
yes '' | pecl install -f apc
источник
"yes\n" | pecl install -f apc
?!yes
команду. Преимущество этогоprintf
заключается в том, что он генерирует выходные данные повторно, что делает его более переносимым, если программа установки pecl запросит дополнительные вопросы, чемprintf
ожидалось в сценарии .Ответ Обинванна Хилла помог мне, поэтому я не предлагаю здесь ничего нового, но следующее кажется абсолютным кратчайшим, также без каких-либо необычных инструментов.
echo '' | pecl install apc
источник
pecl install apc <<<''