2014-09-06 2 views
0

Я пытаюсь автоматизировать настройку сервера с помощью сценария оболочки.Как мне ввести «y» автоматически?

Мне нужно установить несколько зависимостей с помощью apt-get, а некоторые требуют, чтобы пользователь вводил y перед продолжением установки.

Мой вопрос: как я могу убедиться, что сценарий оболочки автоматически вставляет y каждый раз, когда он видит что-то вроде Do you want to continue [Y/n]??

Я пробовал sudo apt-get install git << 'y' и 'y' | sudo apt-get install git, но без результатов.

Что я могу попробовать дальше?

+4

'apt-get install -y' – user123444555621

ответ

3

Используйте только флаг -y или --yes, как описано в справочных страницах apt-get.

BTW есть даже опция --force-yes. Таким образом, у вас есть много вариантов в ваших руках.

1

yes | sudo apt-get install git

yes пишет слово «да» на стандартный вывод снова и снова и снова. Его также можно использовать для других слов (т. Е. yes no | sudo apt-get..., чтобы повторить «нет» на stdin).

+0

педантично,' yes' записывает 'y' в stdout. 'yes yes' будет писать' yes'. –

1

Используйте команду yes.

Как это:

yes | rm *.txt 

Это позволит удалить любой файл, и команда yes означает, что вы не должны отвечать на запросы.

В вашем случае,

yes | sudo apt-get install git 

Это использует трубу functionaly к трубе «да» ответы в стандартный ввод.