bug-coreutils
[Top][All Lists]
Advanced

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

Re: tail(1) --no-free-bonus- "clarity separator lines"


From: Eric Blake
Subject: Re: tail(1) --no-free-bonus- "clarity separator lines"
Date: Wed, 23 Jan 2008 07:25:02 -0700
User-agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.9) Gecko/20071031 Thunderbird/2.0.0.9 Mnenhy/0.7.5.666

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

According to address@hidden on 1/23/2008 6:56 AM:
| $ tail --version
| tail (GNU coreutils) 5.97 ...

Consider upgrading (we've told you this before).  The latest stable
version of coreutils is 6.10.

|
| Anyway, ha ha ha! Checkmate: there's no option to turn off tail's
| "free bonus gift" of extra "clarity separator lines" at the end of all
| files but the last.
|
| Ask yourselves, would more(1) pull such cr*p?

POSIX requires more to support multiple files, but only requires tail to
support one file.  And even with more, POSIX gives no requirements on how
multiple files are displayed (ie. what headers to use) when more's output
is to a non-terminal.  Therefore how tail(1) behaves on multiple files is
a GNU extension, with no specified precedence to borrow from more(1), so
we are free to use whatever header between files that we choose.  That
said, it is simply a matter of documenting the header:

It appears that your version of more[*] uses a three-line header, with no
blank lines, before every file:

| ::::::::::::::
| t
| ::::::::::::::

while tail uses a one-line header before the first file:

| ==> t <==

and a two-line header (including the blank line you dislike) before the
remaining files:

|
| ==> t <==

| So we see your work is cut out for you.

What are you suggesting?  Maybe something like --header-style, which takes
a printf-like argument that can be used to specify contents of an
alternate header before the first file and between other files?

[*] My version of more happens to be less-382, which refuses to redisplay
the same file multiple times (hmm, that may violate POSIX), and uses no
separator between distinct files (no violation there):

$ less t t | cat
1
2
3
$ cp t t1
$ less t t1 | cat
1
2
3
1
2
3

- --
Don't work too hard, make some time for fun as well!

Eric Blake             address@hidden
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (Cygwin)
Comment: Public key at home.comcast.net/~ericblake/eblake.gpg
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFHl04+84KuGfSFAYARAuTmAKDOEyoO0SakG0u+1cfkKrMWDNyWAgCggfCw
0k+8wTLHOPzkq6P8C53zerk=
=Cnuc
-----END PGP SIGNATURE-----




reply via email to

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