Existe uma maneira de instalar e remover pacotes em um único comando yum?

19

Existe uma maneira de adicionar e remover pacotes ao mesmo tempo com um único yumcomando? Por exemplo, instalando o postfix e removendo o sendmail sem executar dois comandos / transações separados.

Michael Ekstrand
fonte
Não é do meu conhecimento, mas não sou um usuário diário do yum. Por que você deseja em um único comando?
jippie
Conveniência @jippie, principalmente. E reduzindo o tempo para configurar várias transações.
Michael Ekstrand

Respostas:

25

Sim. A chamada yum shellpermitirá que você especifique vários comandos que acontecerão simultaneamente quando runfor digitado.

Ignacio Vazquez-Abrams
fonte
2
Incrível, é exatamente isso que eu estava procurando.
Michael Ekstrand
1
Eu originalmente estava usando Python para isso. Agora reduzi meu script para cerca de 20% do tamanho usando o BASH!
quickshiftin
20

Versões mais recentes do yum também têm o swapcomando:

# yum swap -- install foo -- remove bar
Michael Ekstrand
fonte
Pelo menos a partir de agora ( yumno RHEL 7), isso também pode ser escrito como mais curto yum swap bar foo.
Axel Beckert
8

Como a resposta aceita já diz, você pode usar yum shellpara executar vários comandos ao mesmo tempo, o que é bom para uso interativo. Mas se você deseja chamar esse comando a partir de um script, também pode executá-lo em um arquivo, por exemplo yum shell translist.txt, onde o arquivo pode conter, por exemplo:

remove squid
install squid34
run

Anexe a -yopção para assumir que sim nos prompts de confirmação.

djluko
fonte
1
O -yswitch é anexado ao yum shellcomando, não aos comandos dentro do shell, certo? Eu acho (mas não testei) que adicionar config assumeyes 1ao topo dos comandos do shell terá o mesmo efeito sem precisar alterar a linha de comando inicial.
mattdm
sim, yum shell -yfunciona para mim para tornar toda a operação não interativa.
RubyTuesdayDONO 6/12