Como encontrar o número de 'aplicativos' exclusivos no Debian jessie

Como encontrar o número de 'aplicativos' exclusivos no Debian jessie

Esta é uma consulta de acompanhamento emallpackages.txt.gz tem dois tamanhos de arquivo diferentes?

$ wc -l allpackages.txt 
57725 allpackages.txt

Eu olhei para a saída e ela diz 57725 -6 os arquivos de cabeçalho que é o total geral de 57719 pacotes, mas conforme compartilhado nos comentários emhttp://linux.koolsolutions.com/2008/12/19/counting-number-of-packages-under-debian-linux/#comment-10014o comando a seguir deve funcionar, mas não funciona.

$ tail -n +7 allpackages.txt | cut -d’ ‘ -f1 | cut -d’-‘ -f1 | uniq | wc -l
cut: cut: the delimiter must be a single character
Try 'cut --help' for more information.
the delimiter must be a single character
Try 'cut --help' for more information.
0

Alguém pode ajudar de duas maneiras: -

a. Decodificando o que o próprio comando tenta fazer? Eu sei que tailé usado para fornecer as últimas 10 palavras estranhas e cuté quando você está tentando remover algumas seções do arquivo.

Se necessário, compartilhe allpackages.txt em algum lugar para que as pessoas possam descobrir a melhor maneira de saber o número exclusivo de pacotes nele contidos.

https://www.dropbox.com/sh/9p03q138xx9nxvb/AAAukls-UnxRZwoCPwx4HwLAa?dl=0

Responder1

Você mostrou o comando: tail -n +7 allpackages.txt | cut -d’ ‘ -f1 | cut -d’-‘ -f1 | uniq | wc -l. Contém aspas não ASCII, o que certamente não é o pretendido.

Em vez disso, tente isto:

tail -n +7 allpackages.txt | cut -d' ' -f1 | cut -d- -f1 | uniq | wc -l

Aqui está o que os membros do pipeline fazem:

  • tail -n +7imprime um arquivo começando na linha 7;

  • cut -d' ' -f1mantém o primeiro campo, utilizando um único espaço como separador;

  • cut -d- -f1mantém o primeiro campo, usando um sinal de menos ( -) como separador;

  • uniqcomprime execuções de linhas idênticas em uma única linha;

  • wc -limprime a contagem de linhas.

Portanto, todo o pipeline ignora as primeiras seis linhas do seu arquivo e tenta contar os valores exclusivos no campo selecionado. (Isso pressupõe que a entrada seja classificada de modo que os valores a serem compactados venham em sequência; se isso não for verdade, uma chamada para classificar, talvez sort -u, possa ser usada).

informação relacionada