é possível desinstalar o pacote rpm em apenas um comando da lista >> grep >> desinstalar?

é possível desinstalar o pacote rpm em apenas um comando da lista >> grep >> desinstalar?

Estou pensando em incluir 3 etapas para desinstalar um pacote no CentOS7, mas travei no comando merge 3 de desinstalar um pacote para apenas 1 comando.

Ok, esta é a minha situação: eu tenho o pacote javajdk-8u151-linux-x64.rpmque foi instalado com sucesso antes e quero desinstalá-lo.
Claro, não consigo desinstalar este pacote java usando o comando:

# rpm -e jdk-8u151-linux-x64.rpm

Então eu tenho que usar 3 comandos em 3 etapas como abaixo:

  • Etapa 1: preciso encontrar o nome do pacote que instalo:

    [susu@localhost ~]$ rpm -qip jdk-8u151-linux-x64.rpm
    [susu@localhost ~]$ rpm -qip jdk-8u151-linux-x64.rpm
    Name        : jdk1.8
    
  • Etapa 2: usar este comando para encontrar exatamente o pacote é:

    [susu@localhost ~]$ sudo rpm -qa |grep -i 'jdk1.8'
    [sudo] password for susu: 
    jdk1.8-1.8.0_151-fcs.x86_64
    
  • Etapa 3: usando rpm -epara apagar o pacote:

    rpm -e jdk1.8-1.8.0_151-fcs.x86_64
    

Então, minha pergunta é: como posso mesclar o comando da Etapa 2 e da Etapa 3 em apenas um comando?

Responder1

Consulte o NVR e remova-o.

rpm -e "$(rpm -qp --queryformat '%{name}-%{version}-%{release}' "$1")"

informação relacionada