That is not a problem with ls.
It is now POSIX compliant in this respect and your environment
(probably because LC_* are set to en_US) is provoking the
unexpected behavior.
Set the LC_COLLATE envvar to C to restore the behavior you're expecting.
Dave Gotwisner <[EMAIL PROTECTED]> wrote:
| The fileutils version 4.1 (specifically) "ls" are broken.
|
| Downloading the trees (today) from ftp.gnu.org for 4.0 and 4.1 give
| versions of 4.0 and 4.1, respectively. 4.1 has the same problem
| behavior, 4.0 does not. This is a result of my discovering a similar
| problem with Redhat 7.1 which ships with fileutils 4.0.36 (their label).
|
| I have been using LS for 25 years on different platforms, and they all
| behaved consistently, the behavior on 4.1 is wrong, hence, I consider it
| broken.
|
| What I am observing is that if you have a directory that contains dot
| files, capital letter files, and lower case letter files, and do an "ls
| -AF" command, the old (and in my opinion, correct) behavior is to put
| dot files first, and do a straight ascii sort, so the capital letter
| names appear before the lower case letter names. The new behavior
| appears to ignore punctuation, and to do a non-ascii, case ignored sort,
| so README and readme.first appear contiguous in the directory listing.
|
| ITthis behavioral change will break many scripts that depend upon the
| output of LS being consistent.
_______________________________________________
Bug-fileutils mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/bug-fileutils