Автоматическое подтверждение при запуске скриптов bash?

Я работаю над простым bash-скриптом, который настраивает новые серверы так, как я хочу. В этом нет ничего особенного, но, надеюсь, это сэкономит мне много времени в будущем.

Как я могу запретить запросы вроде этого:

  You are about to add the following PPA to your system:
    Stable version of nginx.
    More info: https://launchpad.net/~nginx/+archive/stable
  Press [ENTER] to continue or ctrl-c to cancel adding it

При выполнении таких команд из скрипта:

  sudo add-apt-repository ppa:nginx/stable 
  sudo apt-get update
  sudo apt-get -y install nginx

Есть ли флаг автоматического принятия, который я могу установить, или что-то в этом роде? как это?

11
задан 3 February 2013 в 15:44

2 ответа

add-apt-repository имеет флаг -y, который вы можете использовать, что должно сработать.

Хотя я действительно хочу предложить вам настроить системы управления конфигурациями, например puppet или chef, для настройки серверов. Они сэкономят вам много времени!

0
ответ дан 3 February 2013 в 15:44

Вероятно, стоит отметить, что это то, для чего был написан yes. По умолчанию он печатает y несколько раз, но yes <string> просто повторяет «строку».

Если у вас есть куча ответов, таких как:

Press [ENTER] to continue or ctrl-c to cancel adding it

Вы можете сделать что-то вроде:

yes '' | sudo add-apt-repository ppa:nginx/stable
[ 1111] Для автоматического ввода ввода при каждом запросе. Учитывая, что apt-add-repository имеет опцию -y, вы должны использовать ее, но если вы когда-либо сталкиваетесь со скриптом, у которого нет этой опции, вы можете использовать yes.

0
ответ дан 3 February 2013 в 15:44

Другие вопросы по тегам:

Похожие вопросы: