GNU Core Utilities Introduction
Introduction
GNU Core Utilities or coreutils is a collection of core utility commands.
It began as multiple separate projects, namely (all from David Mackenzie):
fileutils(1990)shellutilsandtextutils(1991)
In September 2002, these were merged together to form GNU Coreutils, while Jim Meyering served as the maintainer.
Commands
Coreutils consists of over 100 individual commands, mainly falling into 3 buckets—the same from which it originated:
- file utilities:
ls,cp,mv,rm,mkdir,rmdir,ln,chmod/chown - shell utilities:
pwd,echo,whoami/id,date,uname - text utilities:
cat,wc,cut/paste,tr
cd—as opposed to common sense—is not a part of coreutils. It’s becausecdhas to be a shell-builtin to work.Current working directory (CWD) is a process trait (controlled via
chdir()system call). Ifcdwere an external utility, the process running it would not be able to change its parent process’s (the invoking shell’s) CWD.
These are fundamental commands, essential to operate in the CLI world. Unlike
other operating systems where these commands are “baked into” the shell, these
are standalone binaries placed in /bin and /sbin.
