Когда я устанавливаю Ubuntu, первое, что я обычно делаю, это удаление некоторых программ и установка некоторых других. Для этого я вхожу в терминал:
sudo apt-get remove applicationA applicationB applicationC && sudo apt-get install applicationX applicationY applicationZ
.
Это работает хорошо, но проблема в том, что я должен подтвердить дважды: сначала мне нужно подтвердите удаление приложений, и через некоторое время я должен подтвердить установку других. Было бы здорово, если бы мне только нужно было подтвердить один раз, потому что мне не пришлось бы снова возвращаться к компьютеру. Есть ли какая-нибудь команда, чтобы сделать это?
Обратите внимание, что я не ищу обходные пути, например. Менеджер пакетов Synaptic. Я хочу сделать это из командной строки.
Спасибо.
Используйте опцию -y для apt-get.
На странице man:
-y, --yes, --assume-yes
Automatic yes to prompts; assume "yes" as answer to all prompts and
run non-interactively. If an undesirable situation, such as
changing a held package, trying to install a unauthenticated
package or removing an essential package occurs then apt-get will
abort. Configuration Item: APT::Get::Assume-Yes.
Итак, для вас это выглядело бы как-то как sudo apt-get remove -y foo1 foo2 foo3 и sudo apt-get install -y foo foo1 foo2 foo3.
Используйте опцию -y
для apt-get
.
blockquote>-y, --yes, --assume-yes Automatic yes to prompts; assume "yes" as answer to all prompts and run non-interactively. If an undesirable situation, such as changing a held package, trying to install a unauthenticated package or removing an essential package occurs then apt-get will abort. Configuration Item: APT::Get::Assume-Yes.
Поэтому для вас это будет выглядеть как
sudo apt-get remove -y foo1 foo2 foo3
иsudo apt-get install -y foo foo1 foo2 foo3
.
В качестве альтернативы уже опубликованным ответам вы также можете выбрать установку и удаление пакетов в одной команде с помощью aptitude. С помощью команд установки aptitude добавьте - после имени пакета, чтобы удалить его, и с помощью команд удаления aptitude добавьте + после имени пакета, чтобы он был установлен.
Если вы введете
sudo aptitude install pkg1 pkg2-
, первые пакеты будут установлены, а второй будет удален.
С другой стороны, если вы используете
sudo aptitude remove pkg1+ pkg2
, второй пакет будет удален и первый установлен.
Источник: более подробное объяснение apt и aptitude см. в Руководстве Debian.
На странице apt-get man:
install [...] Если к имени пакета добавляется дефис (без промежуточного пространства), идентифицированный пакет будет удален, если он установлен , Аналогично знак плюса может использоваться для обозначения пакета для установки. Эти последние функции могут использоваться для переопределения решений, принятых системой разрешения конфликтов apt-get.Вы можете добавить дефис к имени пакета, тогда apt-get удалит этот пакет. Поэтому, чтобы удалить пакет a и установить b:
sudo apt-get install a- b
может выполнять обе команды, используя только один вызов sudo:
sudo sh -c 'apt-get remove a b c && apt-get install d e f'
В качестве альтернативы уже опубликованным ответам вы также можете выбрать установку и удаление пакетов в одной команде с помощью aptitude. С помощью команд установки aptitude добавьте - после имени пакета, чтобы удалить его, и с помощью команд удаления aptitude добавьте + после имени пакета, чтобы он был установлен.
Если вы введете
sudo aptitude install pkg1 pkg2-
, первые пакеты будут установлены, а второй будет удален.
С другой стороны, если вы используете
sudo aptitude remove pkg1+ pkg2
, второй пакет будет удален и первый установлен.
Источник: более подробное объяснение apt и aptitude см. в Руководстве Debian.
В качестве альтернативы уже опубликованным ответам вы также можете выбрать установку и удаление пакетов в одной команде с помощью aptitude. С помощью команд установки aptitude добавьте - после имени пакета, чтобы удалить его, и с помощью команд удаления aptitude добавьте + после имени пакета, чтобы он был установлен.
Если вы введете
sudo aptitude install pkg1 pkg2-
, первые пакеты будут установлены, а второй будет удален.
С другой стороны, если вы используете
sudo aptitude remove pkg1+ pkg2
, второй пакет будет удален и первый установлен.
Источник: более подробное объяснение apt и aptitude см. в Руководстве Debian.
В качестве альтернативы уже опубликованным ответам вы также можете выбрать установку и удаление пакетов в одной команде с помощью aptitude. С помощью команд установки aptitude добавьте - после имени пакета, чтобы удалить его, и с помощью команд удаления aptitude добавьте + после имени пакета, чтобы он был установлен.
Если вы введете
sudo aptitude install pkg1 pkg2-
, первые пакеты будут установлены, а второй будет удален.
С другой стороны, если вы используете
sudo aptitude remove pkg1+ pkg2
, второй пакет будет удален и первый установлен.
Источник: более подробное объяснение apt и aptitude см. в Руководстве Debian.