У меня есть несколько вопросов о переходе от apt-get к zypper в скриптах bash.
Что является эквивалентом этого?
sudo apt-get install curl --assume-yes
(где может быть любой пакет curl)
Я нашел шпаргалку Zypper - openSUSE . Очень хорошо! Но я был бы признателен за этот опыт - как правильно использовать zypper в сценарии, где я хочу автоматически соглашаться со всеми приглашениями, а не пропускать вещи, требующие ответа?
С моей неопытностью я хотел бы использовать:
sudo zypper --non-interactive --no-gpg-checks --quiet install --auto-agree-with-licenses curl
Но действительно ли это эквивалент --assume-yes
?
Как насчет эквивалента для них?
sudo apt-get autoremove -y
sudo apt-get autoclean -y
Это говорит о том, что нет ни одного ...
Есть ли замена для gdebi-core? Или gdebi никогда не требуется с «мощным решателем удовлетворенности» Зиппера? Я использую gdebi для ситуаций, когда мне нужно установить пакет на более старую версию, и у меня уже есть файл .deb (но не все зависимости).
-n
опция и-y
опция, и они означают одно и то же, но они должны быть расположены в разных местах командной строки? Да, это сбивает с толку. (Чтобы быть ясным: я не стреляю в мессенджер; я говорю, что разработчик должен был больше думать о проблемах юзабилити.)zypper
есть-n
вариант. Командаinstall
sub имеет как-y
опцию, которая удобна для псевдонима глобальной-n
опции, так и имеет свою собственную,-n
что сокращенно--name
. Возможно установить пакеты по возможности. Таким образом,zypper install -n blah
указывает разрешать только именованные пакетыblah
и не учитывать пакеты, которые предоставляютblah
. Без этого zypper может разрешать на основе раздела обеспечить из RPM (включая сравнение версий), что может упростить разрешение зависимостей.zypper install 'python>3.5'
например.zypper install -n
, если, возможно, вы хотите установить определенный пакет, имя которого является возможностью, предоставляемой другими. Например, может быть, есть несколько реализаций vi, и вам нужен только конкретный пакет с именем vi без разрешения, возвращающийся к gvim (который предоставляет vi) в случае, если конкретныйvi
пакет по какой-то причине отсутствует в вашем репозитории. Лично мне не нравится запутанная природа коротких опций, и я редко использую их в сценариях или во всем, что кому-то (например, мне) может понадобиться прочитать позже. : DУ вас есть опция --non-interactive. Со страницы руководства:
Нет реального соответствия автоудалению apt-get. Наиболее близким является
--clean-deps
параметрremove
команды, который очищает зависимости сразу (но не после).источник
zypper.conf
для постоянного подтверждения, как в других менеджерах пакетов?Это образец
Конечно, вы можете включить больше параметров, таких как,
--auto-agree-with-licenses
но помните, что это имеет значение, если до или послеinstall
источник
Это сработало для меня (проверено на SLES12SP3):
Обратите внимание
-C/--no-check
наzypper ar
.Теперь вы можете установить пакеты:
источник