Name: Anonymous 2012-10-18 13:16
if it has more features? It's not like the old features go away.
[lol@lol ~]$ valgrind cat
==2190== Memcheck, a memory error detector
==2190== Copyright (C) 2002-2011, and GNU GPL'd, by Julian Seward et al.
==2190== Using Valgrind-3.7.0 and LibVEX; rerun with -h for copyright info
==2190== Command: cat
==2190==
^C==2190==
==2190== HEAP SUMMARY:
==2190== in use at exit: 36,863 bytes in 1 blocks
==2190== total heap usage: 31 allocs, 30 frees, [b]40,544 bytes allocated[/b]
==2190==
==2190== LEAK SUMMARY:
==2190== definitely lost: 0 bytes in 0 blocks
==2190== indirectly lost: 0 bytes in 0 blocks
==2190== possibly lost: 0 bytes in 0 blocks
==2190== still reachable: 36,863 bytes in 1 blocks
==2190== suppressed: 0 bytes in 0 blocks
==2190== Rerun with --leak-check=full to see details of leaked memory
==2190==
==2190== For counts of detected and suppressed errors, rerun with: -v
==2190== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 2 from 2)
ls or cat doesn't make these commands specially featureful. And, at least on the desktop market, GNU systems' share is rather ridiculous.ls and grep with pretty colors and such pays dividends for interactive use, so I don't mind it. However, I do agree that the extensions to things like true, cat, or awk are actively harmful. Maybe if the GNU Project had started three years later or Larry Wall had released Perl three years earlier we wouldn't have this problem.-l and disable any colouration. I'm also not fond of my directory listings looking like some kid's drawing.
alias ls='ls -F' is a nice compromise if you don't like the colors. It's more compact, and you will never need to repeat the listing because you can't remember whether an entry is a file, directory, symlink etc.
cat has a 64K buffer.)
sendfile(). It is possible to implement cat with a dozen machine instructions and no userspace buffer at all. Given the enormous source code size of any piece of GNU software, I'd think they would have at least put a couple of #ifdefs and call sendfile() when building for a Linux target.libc initialization code, it's just not an excuse. That's actually the main point of my rant. GNU software is just bad C and bad UNIX. Simply that. Whether Stallman or whoever thinks it's better, it does not matter.
/etc for debconf to use. I wouldn't expect *BSD to have anything like that.exim4). Most desktop users don't even know it's there.