shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] wc -l conta errado [off-topic]


From: Flavio Junior
Subject: Re: [shell-script] wc -l conta errado [off-topic]
Date: Tue, 11 Aug 2009 15:24:47 -0300

[root@cerebro ~]# echo -en 'a\nb\nc' | wc -l
2
[root@cerebro ~]# echo -en 'a\nb\nc'
a
b
c[root@cerebro ~]# echo -e 'a\nb\nc'
a
b
c
[root@cerebro ~]#

O caso é que o echo, por padrão, já adiciona um \n no fim de linha.. o
-n evita isso.

--

Flávio do Carmo Júnior aka waKKu

2009/8/11 Elder Marco <address@hidden>:
>
>
>>
>> Olá a todos!!
>>
>> A alguns dias atrás mandei um e-mail sobre sobre um programa em shell
>> que contava as linhas realmente utilizadas de códigos fontes de várias
>> linguagens.
>> Depois eu levantei uma questão. que ficou sem resolução: a de que o wc
>> contaria as linhas de forma errada.
>> Pois bem como especificada na própria man-page do wc ele não conta
>> linhas, e sim newlines (\n).
>>
>> ou seja, se o exmplo abaixo for mandado para o wc -l:
>>
>> 1 a \n
>> 2 b \n
>> 3 c
>>
>> ele retornará que 2 e não três. para retornar um valor "mais correto",
>> você precisa inserir um newline no fim da última linha:
>>
>> 1 a \n
>> 2 b \n
>> 3 c \n
>> 4
>>
>> ou usar nl (leia a man-page do nl)
>>
>> Bom eu não sabia disso...
>>
>> Um grande abraço a tod@s
>>
>
> Testei aqui no Fedora 11 e também não tive problemas. Ele contou 3
> linhas em vez de duas. :-)
>
> 


reply via email to

[Prev in Thread] Current Thread [Next in Thread]