Como usar curingas com o aptitude?


Respostas:


16

http://ubuntuforums.org/showthread.php?t=228309 indica que é possível através de construções como ~n<package name>e isso é confirmado pelo manual do usuário http://algebraicthunk.net/~dburrows/projects/aptitude/doc/en/ ch02s03s02.html .

~nin ~n<package name>é um padrão de pesquisa para nomes de pacotes correspondentes. Também é possível corresponder a outros campos que não os nomes dos pacotes, consulte http://algebraicthunk.net/~dburrows/projects/aptitude/doc/en/ch02s03s05.html#tableSearchTermQuickGuide .

Aqui está um exemplo. Diga que deseja aptitudemostrar todos os pacotes com "redshift" no nome e, em seguida, você emite

aptitude show ~nredshift

Deve ser combinável com outras opções de aptidão, como instalar e remover também, por exemplo, para remover todos os pacotes instalados com o openoffice no nome que você emitir

sudo aptitude -P remove ~nopenoffice

Certifique-se de usar a -Popção ao usar padrões de pesquisa para forçar o aptitude a exibir um prompt antes de baixar, instalar ou remover pacotes (o padrão de pesquisa pode ter muitos correspondências e você deve ser avisado antes de executar uma ação).

Uma coisa que ainda não resolvi é como obter a funcionalidade exata dos curingas, por exemplo, que openoffice*corresponde a todas as strings iniciadas com "openoffice" ( ~nopenofficecorresponde a qualquer string que contenha "openoffice"). Talvez seja possível uma solução alternativa, por exemplo, procurar pacotes instalados com uma certa string em seus nomes e depois alimentar o aptitude com seus nomes.


-P é para não seguir links simbólicos, não pronta
— rancho

O uso do ~ nredshift também não procurará o redshift, mas o ~ nredshift. Também ~ n não é nenhum argumento por padrão #
— 1919

A resposta dada pela NorticUs está incorretamente correta. A sintaxe correta aqui seria ~ n ^ redshift
— rancho

5

Você apenas coloca entre aspas:

sudo apt-get remove "openoffice*"

Caso contrário, o shell tentaria corresponder isso aos arquivos do seu diretório de trabalho atual.


5
A questão é sobre aptitudee não apt-get. Esta solução não funciona com o aptitude.
— NN

@ MichałŠrajer: nenhuma expansão de nome ocorrer entre aspas, tanto simples e dupla
— enzotib

@enzotib: Meu erro. Obrigado por apontar isso. Comentário removido.
— Michał Šrajer

ok, eu não entendo ... por isso pode ser feito com aptidão ou trabalho dessa maneira ... sudo remover aptidão "openoffice *"
— raulricardo21

@ raulricardo21 Uma coisa semelhante pode ser feita com o aptitude, veja minha resposta .
— NN

4

Para corresponder as strings começando com o nome de um pacote, coloque um a antes ^dele.
por exemplo:aptitude search ~n^openoffice


Eu não apenas a parte de pesquisa, você também deve mencionar a forma de obter o resultado da pesquisa
— Rancho
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.