Автоматизація установки apt-get за допомогою --assume-так


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.
Avinash Raj

Відповіді:


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
davejagoda

1
Зверніть увагу, що цього може бути недостатньо, і вам може знадобитися додати -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold"до своїх команд. Докладні відомості див. У розділі raphaelhertzog.com/2010/09/21/… .
TTimo

@TTimo Нічого собі! Через 6 днів після того, як ви опублікували цей коментар, я приходжу і знаходжу саме таку відповідь, яка мені потрібна !! Якби я міг більше підтримати ваш коментар, я б хотів!
Crimbo

Не соромтесь редагувати відповідь додатковими опціями.
Авінаш Радж

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.