bug-coreutils
[Top][All Lists]
Advanced

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

bug#16329: `head --lines=-0' prints nothing if no newline at the EOF


From: Алексей Шилин
Subject: bug#16329: `head --lines=-0' prints nothing if no newline at the EOF
Date: Fri, 03 Jan 2014 19:50:56 +0400

Hi,

If one runs `head --lines=-0 somefile', he'll sometimes get no output instead 
of full file contents as
expected after reading the manual:

-n, --lines=[-]K
        print the first K lines instead of the first 10; with the lead‐
        ing `-', print all but the last K lines of each file

It depends on whether the file has a trailing newline.

For example:

$ printf '1\n2\n3' > test1
$ printf '4\n5\n' > test2
$ head -n -0 test*
==> test1 <==

==> test2 <==
4
5
$ tail -n +0 test*   # Just for comparison
==> test1 <==
1
2
3
==> test2 <==
4
5
$ 

I'm using Debian GNU/Linux 7 wheezy and coreutils-8.13; I've also tested 
coreutils-8.22, and it has the
same issue.

A proposed patch fixing the bug is attached. It makes head behave exactly like 
`tail -n +0' on same files.

-- 
Алексей Шилин

Attachment: head_nlines_fix.patch
Description: Source code patch


reply via email to

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