Por que estou recebendo tantos acessos procurando por “git” no cache do apt?

4

Quando eu dou o seguinte comando:

 apt-cache search git | wc -l

Eu recebo a resposta 756. Como posso listar apenas a meia dúzia de apps associados ao git?

    
por Tyler Durden 23.11.2013 / 21:36

2 respostas

5

Pesquisa usando âncoras ( ^... )

Você pode procurar por entradas que começam com a string "git" assim.

Exemplo

$ apt-cache search ^git | head -10
git - fast, scalable, distributed revision control system
git-core - fast, scalable, distributed revision control system (obsolete)
git-doc - fast, scalable, distributed revision control system (documentation)
git-man - fast, scalable, distributed revision control system (manual pages)
gitk - fast, scalable, distributed revision control system (revision tree visualizer)
easygit - git for mere mortals
gforge-plugin-scmgit - Git plugin for FusionForge (transitional package)
git-all - fast, scalable, distributed revision control system (all subpackages)
git-annex - manage files with git, without checking their contents into git
git-arch - fast, scalable, distributed revision control system (arch interoperability)

Esta é uma diferença sutil de apenas procurar pela string "git", mas a diferença é que esta busca irá encontrar substrings que começam com a string "git", enquanto uma busca bareword por "git" retornará entradas como "digital" ".

Você também pode restringir a saída de apt-cache search ^git canalizando a saída para um grep adicional como este:

Filtrar usando grep

$ apt-cache search ^git | grep "^git" | head -10
git - fast, scalable, distributed revision control system
git-core - fast, scalable, distributed revision control system (obsolete)
git-doc - fast, scalable, distributed revision control system (documentation)
git-man - fast, scalable, distributed revision control system (manual pages)
gitk - fast, scalable, distributed revision control system (revision tree visualizer)
git-all - fast, scalable, distributed revision control system (all subpackages)
git-annex - manage files with git, without checking their contents into git
git-arch - fast, scalable, distributed revision control system (arch interoperability)
git-buildpackage - Suite to help with Debian packages in Git repositories
git-cola - highly caffeinated git GUI

Que mostrará apenas os pacotes cujos nomes começam com a string "git".

Use a opção --names-only

Isso só irá procurar os nomes dos pacotes para as partidas que começam com a string "git".

$ apt-cache search --names-only ^git | head -10
git - fast, scalable, distributed revision control system
git-core - fast, scalable, distributed revision control system (obsolete)
git-doc - fast, scalable, distributed revision control system (documentation)
git-man - fast, scalable, distributed revision control system (manual pages)
gitk - fast, scalable, distributed revision control system (revision tree visualizer)
git-all - fast, scalable, distributed revision control system (all subpackages)
git-annex - manage files with git, without checking their contents into git
git-arch - fast, scalable, distributed revision control system (arch interoperability)
git-buildpackage - Suite to help with Debian packages in Git repositories
git-cola - highly caffeinated git GUI
    
por 23.11.2013 / 22:39
0

Provavelmente porque isso:

apt-cache show libqt5sensors5 | grep -i git
Version: 5.0~git20130507-0ubuntu1~raring1~test1
 WARNING: This module is not an official part of Qt 5, but instead a git
Version: 5.0~git20130115-0ubuntu1
Filename: pool/universe/q/qtsensors-opensource-src/libqt5sensors5_5.0~git20130115-0ubuntu1_amd64.deb

Alguns pacotes são "git" relacionados, outros têm apenas "git" em algum lugar da descrição, já que apt-cache search não busca apenas o nome do pacote, mas a descrição curta / longa.

How can I list just the half-dozen or so apps associated with git?

apt-cache search git | grep -i git

Isso mostrará apenas os pacotes que possuem "git" na descrição resumida ou no nome do pacote.

    
por 23.11.2013 / 21:39