Como desinstalar todo o RPM em um diretório?

0

Eu tenho um diretório cheio de arquivos RPM instalados recentemente (obtido executando yum install --downloadonly antes da instalação).

Eu quero saber remover todos esses RPMs para chegar perto de uma instalação 'nova' por motivos de teste.

Existe uma maneira fácil de desinstalar todos os RPMs listados no diretório de uma só vez?

Eu tentei isso:

find . *.rpm | sed "s/.rpm$//g" | xargs sudo yum remove

mas eu recebo a mensagem "não é páreo para argumentos ./" para cada rpm na lista, então algo está errado com o comando.

    
por dsollen 02.06.2017 / 21:49

2 respostas

1

Um caminho:

rpms=( *.rpm )
sudo yum remove "${rpms[*]%.rpm}"
    
por 02.06.2017 / 22:01
1

Outra maneira de realizar essa remoção em massa:

for i in *.rpm
do 
    sudo yum remove $(basename "$i" | sed "s/.rpm$//g")
done

basename removerá todos os valores de caminho anteriores, deixando apenas o nome do arquivo após o qual o .rpm será retirado do final.

Nota:

Adicionar -y após o sudo yum remove eliminará a necessidade de inserir manualmente 'y' quando for solicitado que cada arquivo seja desinstalado.

    
por 02.06.2017 / 22:30