Remover lista de pacotes do Portage
Publicado por Darlan de Campos 30/04/2007
[ Hits: 3.975 ]
Homepage: http://www.iteracao.info
Este script remove um pacote e as suas dependências (não todas, apenas as que foram instaladas junto com o pacote).
Serve para o caso de ter instalado um pacote com várias dependências e querer remover todas. O modo de usar é simples:
# ./remove_lista.pl <pacote>
O pacote indicado deve conter a versão completa e ser o último da lista a ser eliminada, p.ex. "sys-fs/fuse-2.2.2".
#!/usr/bin/perl -w # Autor: Darlan Campos # O autor não se responsabiliza por nenhum efeito # causado por este script use strict; use Term::ReadKey; # Módulo requerido my $pkg = $ARGV[0] or die <<EOF; Uso: ./remove_lista.pl <pacote> O pacote indicado deve conter a versão completa e ser o último da lista a ser eliminada, p.ex. "sys-fs/fuse-2.2.2". Note que o script perguntará antes de remover os pacotes. EOF my $log = "/var/log/emerge.log"; open FILE,$log or die "Impossível abrir log. Verifique se está logado como root --"; my @file = reverse <FILE>; my ($found,$total,@rmv,$opt); # Prepara a lista para remoção for my $line (@file) { if ($line =~ m/>>> emerge \(([0-9]+) of \1\) ($pkg*) to/) { push @rmv, $2; $found = 1 if $1 != 1; $total = $1 } elsif ($found && $line =~ m/>>> emerge \(([0-9]+) of $total\) (.*) to/) { push @rmv, $2; if ($1 == 1) { $found = undef; last } } } # Remove os pacotes if (!@rmv) { print "Nenhum pacote a remover encontrado.\n"; exit } else { print "Pacotes a serem removidos ($total):\n\n"; for (@rmv) { print " * $_\n" } print "\nDeseja prosseguir com a remoção? [s/n] "; while (not defined ($opt = ReadKey(-1))) { } if ($opt eq 's') { print "Removendo pacotes...\n"; for (@rmv) { system "emerge --unmerge $_"; # A linha seguinte elimina os pacotes .tbz2 # unlink "/usr/portage/packages/All/$_.tbz2"; } } }
Wallpapers aleatórios no Fluxbox
Diminuir ou aumentar o brilho de notebook
Nenhum comentário foi encontrado.
Atenção a quem posta conteúdo de dicas, scripts e tal (1)
Manutenção de sistemas Linux Debian e derivados com apt-get, apt, aptitude e dpkg
Melhorando o tempo de boot do Fedora e outras distribuições
Como instalar as extensões Dash To Dock e Hide Top Bar no Gnome 45/46
Como Atualizar Fedora 39 para 40
Instalar Google Chrome no Debian e derivados
Consertando o erro do Sushi e Wayland no Opensuse Leap 15
Instalar a última versão do PostgreSQL no Lunix mantendo atualizado
Flathub na sua distribuição Linux e comandos básicos de gerenciamento
iso de sistema 32 bit em atividade (3)
Lançado Ubuntu 24.04 Final (0)
ASRock H310CM-HG4 vs Linux (11)