coreutils
Provide fundamental system utilities
TLDR
Run a utility with arguments
List files in [l]ong format
Display help for ls
SYNOPSIS
Coreutils is a package, not a single command with a direct synopsis.
It comprises hundreds of individual commands, each with its own specific syntax and options.
For example, a typical command from the coreutils suite, such as ls, would have a synopsis like:
ls [OPTION]... [FILE]...
Each utility within the coreutils package follows the standard Unix command line syntax for options and arguments.
PARAMETERS
Not applicable to the coreutils package itself.
The coreutils package itself does not accept parameters.
Instead, each of the individual utilities contained within the coreutils suite has its own set of parameters and options.
For instance, the ls command has parameters such as -l (long listing format), -a (do not ignore entries starting with .), and -h (with -l, print human readable sizes). The cp command has -r (recursive copy), -i (interactive, prompt before overwrite), etc. Users should consult the manual page (e.g., man <command_name>) for the specific parameters of any individual coreutils command.
DESCRIPTION
coreutils is not a single executable command, but rather a fundamental package containing the essential GNU command-line utilities. These utilities provide the basic building blocks for interacting with the file system, manipulating text, and managing processes in Unix-like operating systems, including Linux. They are indispensable for scripting and everyday system administration. The package comprises three main groups of utilities: file utilities (e.g., ls, cp, mv, rm, mkdir, chmod), text utilities (e.g., cat, sort, uniq, wc, head, tail), and shell utilities (e.g., true, false, echo, printf). Almost every interaction with a Linux system, from simple directory listing to complex scripting, relies heavily on the coreutils package. They form the bedrock upon which more complex software and operations are built, making them arguably the most critical set of tools for any Linux user.
CAVEATS
coreutils commands are so fundamental and widely used that their behavior is often assumed. However, it's important to note that slight behavioral differences can exist between GNU coreutils and other Unix-like implementations (e.g., BSD coreutils found on macOS). While POSIX standards aim for consistency, specific options or default behaviors might vary. Furthermore, shell built-ins (e.g., echo, pwd, cd) might sometimes supersede or complement the coreutils versions of the same name, leading to subtle differences in execution depending on the shell environment.
<B><I>KEY UTILITIES WITHIN COREUTILS</I></B>
The coreutils package bundles hundreds of commonly used programs. Here are some of the most frequently invoked categories and examples:
- File Utilities: ls, cp, mv, rm, mkdir, rmdir, chmod, chown, ln, df, du, touch. These manage files, directories, and their attributes.
- Text Utilities: cat, sort, uniq, wc, head, tail, cut, paste, tr, fmt, split. These are used for viewing, manipulating, and transforming text streams and files.
- Shell Utilities & System Information: echo, printf, true, false, test, dirname, basename, pwd, sleep, date, id, whoami, hostname, printenv, seq. These provide basic shell functionality, control flow, and system information.
- Data Utilities: base64, cksum, md5sum, sha1sum, factor, numfmt. These handle data encoding, integrity checks, and numerical operations.
HISTORY
The coreutils package is a cornerstone of the GNU Project, which was initiated in 1983 by Richard Stallman with the goal of creating a complete Unix-like operating system composed entirely of free software. Many of the utilities in coreutils were early projects of the GNU team, rewritten from scratch to be free software replacements for proprietary Unix commands. Over time, these individual utilities were consolidated into the coreutils package, providing a unified distribution point. They often include enhancements and additional features beyond their traditional Unix counterparts while striving for POSIX compliance. Their continuous development ensures they remain robust and efficient for modern Linux systems.
SEE ALSO
util-linux(1): A package containing various essential system utilities not found in coreutils (e.g., fdisk, mount)., findutils(1): Contains utilities for finding files (find) and applying actions (xargs)., grep(1): The grep family of commands for pattern matching., sed(1): Stream editor for filtering and transforming text., awk(1): A powerful text processing language., bash(1): The Bourne Again SHell, which frequently uses coreutils commands.