Автоматизация установки apt-get с помощью --assume-yes


68

Я пытаюсь написать bash-скрипт для установки списка программ. Я использую, --assume-yesчтобы пройти мимо подсказок.

Эта следующая строка как-то не работает:

sudo apt-get install python-software-properties --assume-yes

Если я пытаюсь apt-getбез --assume-yesнего работать, но подсказка просит меня:

please [Enter] to continue or ctrl+c to cancel adding it

Как добавить Enterв качестве команды при запуске apt-get installвместо использования --assume-yes?


please [Enter] to continue or ctrl+c to cancel adding itэто появляется только если вы пытаетесь добавить PPA.
Авинаш Радж

Ответы:


89

Ваша проблема в том, что опция должна быть перед пакетами, а не после, это правильный синтаксис:

apt-get <options> command package=version/release

Итак, чтобы это работало, оно должно быть:

sudo apt-get --assume-yes install python-software-properties

apt-get простит, когда смешивает команду и параметры, но чтобы ошибиться, вы всегда должны использовать параметры перед командой и никогда не ставить опции или команды после имени пакета.


51

Добавьте -yфлаг к apt-get install <package-name>команде, как показано ниже, вы не получите никаких подсказок при установке пакетов.

sudo apt-get install -y <package-name>

Из apt-get --help

-y  Assume Yes to all queries and do not prompt

Есть ли разница между --assume-yesи -y?
Питер Мортенсен

3
@PeterMortensen они делают то же самое. Со страницы -y, --yes, --assume-yes Automatic yes to prompts
руководства

1
Обратите внимание, что этого может быть недостаточно, и вам также может понадобиться добавить -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold"свои команды. Смотрите Raphaelhertzog.com/2010/09/21/… для получения подробной информации.
TTimo

@ Тимо Вау! Через 6 дней после того, как вы разместили этот комментарий, я пришел и обнаружил, что это именно тот ответ, который мне нужен !! Если бы я мог поднять ваш комментарий больше, я бы!
Крым

Не стесняйтесь редактировать ответ с дополнительными опциями.
Авинаш Радж

1

Для еще одного тихого и эффективного способа следующим образом:

sudo DEBIAN_FRONTEND=noninteractive apt-get install -qq python-software-properties < /dev/null > /dev/null
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.