moreutils is a growing collection of the unix tools that nobody thought to write long ago when unix was young.

It began when I blogged:

I'm a fan of the unix tools philosophy, but I sometimes wonder if there's much room for new tools to be added to that toolbox. I've always wanted to come up with my own general-purpose new unix tool.

Well, after lots of feedback documented in the many followups (1 2 3) in my blog, I've concluded:

Maybe the problem isn't that no-one is writing them, or that the unix toolspace is covered except for specialised tools, but that the most basic tools fall through the cracks and are never noticed by people who could benefit from them.

And so the moreutils collection was born, to stop these programs from falling through the cracks.

Probably the most general purpose tool in moreutils so far is sponge(1), which lets you do things like this:

% sed "s/root/toor/" /etc/passwd | grep -v joey | sponge /etc/passwd

There are lots more listed in the README, and I'm always interested to add more to the collection, as long as they're suitably general-purpose, and don't duplicate other well-known tools.

Should moreutils have a mailing list? Mail me if you'd like to be on such a list. For now, you can subscribe to the news RSS feed below.

Download

A Debian package as well as the source tarball for moreutils can be downloaded from packages.debian.org, or using apt.

The git repository can be cloned from git://git.kitenet.net/moreutils

News

moreutils 0.37 released with these changes

  • parallel: Clarify man page regarding CPUs. Closes: #536597
  • parallel: Add -n option. Thanks, Pierre Habouzit. Closes: #537992 (As a side effect, fixes a segfault if -- was omitted.)
  • parallel.1: Typo fixes. Closes: #538147
Posted in the wee hours of Friday night, July 25th, 2009

moreutils 0.36 released with these changes

  • parallel: New program, contributed by Tollef Fog Heen, that can run multiple jobs in parallel, optionally checking load average.
  • mispipe: Fix closing of extra pipe FD before starting command so it is not inherited by daemons. Closes: #533448 (Thanks, Jeremie Koenig)
Posted late Friday morning, July 10th, 2009

moreutils 0.35 released with these changes

  • ifdata: Don't assume that all interface names are 6 characters or less, for instance "wmaster0" is longer. Increase the limit to 20 characters. Closes: #526654 (Thanks, Alan Pope)
  • isutf8: Reject UTF-8-encoded UTF-16 surrogates. Closes: #525301 (Thanks, Jakub Wilk and liw)
Posted Tuesday afternoon, May 5th, 2009

TODO

Tools under consideration

Here are some that are under consideration but have not yet been included. Feel free to suggest others. I also welcome feedback on which of these to include.

Rejected tools

(Some of these rejections may be reconsidered later.)