Mostrando a contagem de linha de um arquivo específico

5

Esta é a maneira correta de mostrar a contagem de linha de um arquivo específico?

cat file | grep * -c
    
por Test3r 30.03.2011 / 08:48

3 respostas

16

Você pode usar este comando:

wc -l <file>

Isso retornará a contagem total de números de linha no arquivo fornecido.

    
por 30.03.2011 / 08:53
1

Seu shell "expandirá" o asterisco em grep * -c para tudo no diretório atual, resultando, por exemplo:

grep foo bar baz -c

Qual não é o que você quer.

Teste cat file | grep -c . para contar o número de linhas contendo pelo menos um caractere imprimível ou cat file | wc -l para contar o número de linhas.

Se a entrada for um arquivo, no entanto, você pode considerar dar acesso ao arquivo em vez de colocá-lo no stdin, para o comando que faz a contagem. (por exemplo wc -l file ou grep . -c file ).

Se você não quiser que wc mostre o nome do arquivo ao atribuir um nome a ele, extraia a primeira palavra da saída de wc -l com seu filtro favorito, como cut(1) : wc -l foo | cut -d' ' -f 1 ou awk(1) : wc -l foo | awk '{print $1}' , ou algo mais com o mesmo efeito.

    
por 30.03.2011 / 10:04
0

Número de todas as linhas não vazias:

cat file | nl

Ou inclua tudo:

cat file | nl -ba
    
por 30.03.2011 / 09:51