GNU Core Utilities | |
Developer: | GNU Project |
Programming Language: | C, shell script[1] |
Operating System: | Unix-like |
Genre: | Miscellaneous utilities |
License: | 2007: GPL-3.0-or-later 2002: GPL-2.0-or-later |
The GNU Core Utilities or coreutils is a package of GNU software containing implementations for many of the basic tools, such as cat, ls, and rm, which are used on Unix-like operating systems.
In September 2002, the GNU coreutils were created by merging the earlier packages textutils, shellutils, and fileutils, along with some other miscellaneous utilities.[2] In July 2007, the license of the GNU coreutils was updated from GPL-2.0-or-later to GPL-3.0-or-later.[3]
The GNU core utilities support long options as parameters to the commands, as well as the relaxed convention allowing options even after the regular arguments (unless the environment variable is set). This environment variable enables a different functionality in BSD.
See the List of GNU Core Utilities commands for a brief description of included commands.
Alternative implementation packages are available in the FOSS ecosystem, with a slightly different scope and focus, or license. For example, BusyBox which is licensed under GPL-2.0-only, and Toybox which is licensed under 0BSD.
In 1990, David MacKenzie announced GNU fileutils.[4]
In 1991, MacKenzie announced GNU shellutils and GNU textutils.[5] [6] Moreover, Jim Meyering became the maintainer of the packages (known now as coreutils) and has remained so since.[7]
In 2002, Meyering announced GNU coreutils as a merger of the earlier packages textutils, shellutils, and fileutils, along with some other miscellaneous utilities.