bug-coreutils
[Top][All Lists]
Advanced

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

bug#23190: wc - Different output


From: Seva Adari
Subject: bug#23190: wc - Different output
Date: Thu, 7 Apr 2016 17:21:05 -0400

Thanks for the explanation!

On Sat, Apr 2, 2016 at 4:40 PM, Assaf Gordon <address@hidden> wrote:

> tags 23190 notabug
> close 23190
> thanks
>
> Hello Seva,
>
> On 04/01/2016 06:02 PM, Seva Adari wrote:
>
>> I am not sure if this a bug or expected behavior! Here is different output
>> from each run variation of wc invocation:
>>      wc -l test.txt                                         Output: 20
>>      awk '{print $0}' /tmp/test.txt | wc -l       Output: 21
>>      cut /tmp/test.txt -f1 | wc -l                    Output: 21
>>
> [...]
>
>>
>> File, test.txt (attached here with) could be missing last "new line".
>>
>
> This is not a bug in 'wc', but the way it works (perhaps not intuitively):
>
> 'wc' does not count conceptual lines but the number of newline characters
> in the file.
> Since the last file does not have a newline character (ASCII 0x10) - it is
> not counted.
>
> The following will demonstrate:
>
>    $ printf "hello" | wc -l
>    0
>    $ printf "hello\n" | wc -l
>    1
>    $ printf "a\nb\nc" | wc -l
>    2
>
> And 'awk' indeed automatically adds a newline when using 'print', like so:
>
>    $ printf "a\nb\nc" | awk '{print $0}' | wc -l
>    3
>
>
> I'm therefore closing the bug, but discussion can continue by replying to
> this thread.
>
> regards,
>  - assaf
>
>


reply via email to

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