Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
GNU Core Utilities
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
{{Short description|Collection of standard, Unix-based utilities from GNU}} {{Refimprove|date=June 2011}} {{Infobox software | name = GNU Core Utilities | logo = | logo size = | screenshot = | caption = | developer = [[GNU Project]] | latest release version = {{wikidata|property|preferred|references|edit|Q1348204|P348|P548=Q2804309}} | latest release date = {{wikidata|qualifier|preferred|single|Q1348204|P348|P548=Q2804309|P577}} | latest preview version = {{wikidata|property|preferred|references|edit|Q1348204|P348|P548=Q51930650}} | latest preview date = {{wikidata|qualifier|preferred|single|Q1348204|P348|P548=Q51930650|P577}} | programming language = [[C (programming language)|C]], [[shell script]]<ref>{{Cite web |url=https://www.openhub.net/p/coreutils/analyses/latest/languages_summary |title=The GNU Core Utilities Open Source Project on Open Hub: Languages Page |access-date=2019-03-28 |archive-date=2019-03-28 |archive-url=https://web.archive.org/web/20190328192200/https://www.openhub.net/p/coreutils/analyses/latest/languages_summary |url-status=live }}</ref> | operating system = [[Unix-like]] | genre = Miscellaneous utilities | license = 2007, [[GNU General Public License#Version 3|GPL 3.0]] or later since version 6.10<br>2002, [[GNU General Public License|GPL 2.0]] or later until version 6.9 | website = {{URL|https://www.gnu.org/software/coreutils/}} }} The '''GNU Core Utilities''' or '''coreutils''' is a collection of [[GNU]] [[software]] that implements many standard, [[Unix]]-based [[shell (computing)|shell]] [[command (computing)|commands]]. The utilities generally provide [[POSIX]] compliant interface when the {{mono|POSIXLY_CORRECT}} environment variable is set, but otherwise offers a superset to the standard interface. For example, the utilities support [[command-line interface#Option conventions in Unix-like systems|long options]] and options after parameters. This environment variable enables a different functionality in [[BSD]]. Similar collections are available in the [[Free and open-source software|FOSS]] ecosystem, with a slightly different scope and focus (less functionality), or license. For example, [[BusyBox]] which is licensed under [[GNU General Public License|GPL-2.0-only]], and [[Toybox]] which is licensed under [[BSD licenses|0BSD]]. == Commands == The commands implemented by coreutils are listed below. Throughout this article and customary for Unix-based systems, the term ''file'' refers to all [[Unix file types|file system items]] including regular files and special files such as directories. === File utilities === * <code>chcon</code> {{endash}} Changes file security context ([[SELinux]]) * <code>[[chgrp]]</code> {{endash}} Changes file group ownership * <code>[[chown]]</code> {{endash}} Changes file user ownership * <code>[[chmod]]</code> {{endash}} Changes file permissions * <code>[[cp (Unix)|cp]]</code> {{endash}} Copies files * <code>[[dd (Unix)|dd]]</code> {{endash}} Copies and converts file data * <code>[[df (Unix)|df]]</code> {{endash}} Reports file system free space * <code>[[ls|dir]]</code> {{endash}} Like <code>ls -C -b</code>; by default lists files in columns, sorted vertically * <code>dircolors</code> {{endash}} Configures colors used for <code>ls</code> output * <code>[[install (Unix)|install]]</code> {{endash}} Copies files and sets file attributes * <code>[[ln (Unix)|ln]]</code> {{endash}} Creates a link to a file * <code>[[ls]]</code> {{endash}} Lists files * <code>[[mkdir]]</code> {{endash}} Creates directories * <code>[[mkfifo]]</code> {{endash}} Creates [[named pipe]]s (FIFOs) * <code>[[mknod]]</code> {{endash}} Creates [[device node|block or character special files]] * <code>[[mktemp]]</code> {{endash}} Creates [[temporary file|temporary]] regular files or directories * <code>[[mv (Unix)|mv]]</code> {{endash}} Moves and renames files * <code>realpath</code> {{endash}} Reports the absolute or relative path of a file * <code>[[rm (Unix)|rm]]</code> {{endash}} Deletes files * <code>[[rmdir]]</code> {{endash}} Deletes empty directories * <code>[[shred (Unix)|shred]]</code> {{endash}} Overwrites a file to hide its contents and optionally deletes it * <code>[[sync (Unix)|sync]]</code> {{endash}} Flushes file system buffers * <code>[[touch (command)|touch]]</code> {{endash}} Changes file timestamps; creating files if they do not exist * <code>truncate</code> {{endash}} Sets the size of a file via truncation or extension * <code>[[ls|vdir]]</code> {{endash}} Like <code>ls -l -b</code>; by default lists files in long format === Text utilities === * <code>b2sum</code> {{endash}} Computes and checks [[BLAKE2b]] message digest * <code>base32</code> {{endash}} Encodes or decodes [[base32]] * <code>base64</code> {{endash}} Encodes or decodes [[base64]] * <code>basenc</code> {{endash}} Encodes or decodes various encodings including [[hexadecimal]], [[base32]], [[base64]], and Z85 * <code>[[cat (Unix)|cat]]</code> {{endash}} Concatenates files * <code>[[cksum]]</code> {{endash}} Report or compute the checksum of files * <code>[[comm]]</code> {{endash}} Compares two sorted files line by line * <code>[[csplit]]</code> {{endash}} Splits a file into sections determined by context lines * <code>[[cut (Unix)|cut]]</code> {{endash}} Removes sections from each line of files * <code>[[expand (Unix)|expand]]</code> {{endash}} Converts tabs to spaces * <code>[[fmt (Unix)|fmt]]</code> {{endash}} Formats text * <code>[[fold (Unix)|fold]]</code> {{endash}} Wraps each input line to fit in specified width * <code>[[head (Unix)|head]]</code> {{endash}} Outputs the first part of files * <code>[[join (Unix)|join]]</code> {{endash}} Joins lines of two files on a common field * <code>[[md5sum]]</code> {{endash}} Computes and checks [[MD5]] message digest * <code>[[nl (Unix)|nl]]</code> {{endash}} Numbers lines of files * <code>numfmt</code> {{endash}} Formats numbers * <code>[[od (Unix)|od]]</code> {{endash}} Dumps files in octal and other formats * <code>[[paste (Unix)|paste]]</code> {{endash}} Merges lines of files * <code>[[ptx (Unix)|ptx]]</code> {{endash}} Produces a [[permuted index]] of file contents * <code>[[pr (Unix)|pr]]</code> {{endash}} Paginates or columnates files * <code>[[sha1sum]]</code>, <code>sha224sum</code>, <code>sha256sum</code>, <code>sha384sum</code>, <code>sha512sum</code> {{endash}} Computes and checks [[SHA-1]]/[[SHA-2]] message digests * <code>[[shuf]]</code> {{endash}} Generates random permutations * <code>[[sort (Unix)|sort]]</code> {{endash}} Sorts lines of text files * <code>[[split (Unix)|split]]</code> {{endash}} Splits a file into pieces * <code>[[sum (Unix)|sum]]</code> {{endash}} Checksums and counts the blocks in a file * <code>tac</code> {{endash}} Concatenates files in reverse order; line by line * <code>[[tail (Unix)|tail]]</code> {{endash}} Outputs the last part of files * <code>[[tr (Unix)|tr]]</code> {{endash}} Translates or deletes characters * <code>[[tsort]]</code> {{endash}} Performs a [[topological sort]] * <code>[[unexpand]]</code> {{endash}} Converts spaces to tabs * <code>[[uniq]]</code> {{endash}} Removes duplicate lines from a sorted file * <code>[[wc (Unix)|wc]]</code> {{endash}} Reports the number of bytes, words, and lines in files === Shell utilities === * <code>[[uname|arch]]</code> {{endash}} Reports machine hardware name; same as {{code|uname -m}} * <code>[[basename]]</code> {{endash}} Removes the path prefix from a given pathname * <code>[[chroot]]</code> {{endash}} Changes the root directory * <code>[[Unix time#Command line|date]]</code> {{endash}} Reports or sets the system date and time * <code>[[dirname]]</code> {{endash}} Strips non-directory suffix from file name * <code>[[du (Unix)|du]]</code> {{endash}} Shows disk usage on file systems * <code>[[echo (command)|echo]]</code> {{endash}} Outputs text * <code>[[env]]</code> {{endash}} Reports and modifies [[environment variable]]s * <code>[[expr]]</code> {{endash}} Evaluates expressions * <code>[[factor (Unix)|factor]]</code> {{endash}} [[Integer factorization|Factors numbers]] * <code>[[false (Unix)|false]]</code> {{endash}} Does nothing but exit with unsuccessful status * <code>[[groups (Unix)|groups]]</code> {{endash}} Reports the [[group identifier (Unix)|groups]] of which the user is a member * <code>hostid</code> {{endash}} Reports the numeric identifier for the current host * <code>[[id (Unix)|id]]</code> {{endash}} Reports the real or effective [[user identifier|UID]] and [[group identifier (Unix)|GID]] * <code>[[link (Unix)|link]]</code> {{endash}} Creates a [[hard link|link]] to a file * <code>[[logname]]</code> {{endash}} Reports the user's login name * <code>[[nice (Unix)|nice]]</code> {{endash}} Modifies [[scheduling (computing)|scheduling]] priority * <code>[[nohup]]</code> {{endash}} Allows a command to continue running after logging out * <code>nproc</code> {{endash}} Queries the number of (active) processors * <code>pathchk</code> {{endash}} Checks whether file names are valid or portable * <code>pinky</code> {{endash}} A lightweight version of [[finger protocol|finger]] * <code>[[printenv]]</code> {{endash}} Reports [[environment variable]]s * <code>[[printf (Unix)|printf]]</code> {{endash}} Formats text * <code>[[pwd]]</code> {{endash}} Reports the [[current working directory]] * <code>[[readlink (Unix)|readlink]]</code> {{endash}} Reports the value of a [[symbolic link]] * <code>runcon</code> {{endash}} Run command with specified security context * <code>[[seq (Unix)|seq]]</code> {{endash}} Reports a sequence of numbers * <code>[[sleep (command)|sleep]]</code> {{endash}} Blocks (delays, waits) for a specified amount of time * <code>[[stat (system call)|stat]]</code> {{endash}} Reports information about an [[inode]] * <code>stdbuf</code> {{endash}} Runs a command with custom standard streams configuration * <code>[[stty (Unix)|stty]]</code> {{endash}} Changes and reports terminal line settings * <code>[[tee (command)|tee]]</code> {{endash}} Sends output to multiple files * <code>[[test (Unix)|test]]</code> {{endash}} Evaluates an expression * <code>timeout</code> {{endash}} Runs a command with a [[Timeout (computing)|time limit]] * <code>[[true (Unix)|true]]</code> {{endash}} Does nothing but exit with success status * <code>tty</code> {{endash}} Reports the [[computer terminal|terminal]] name * <code>[[uname]]</code> {{endash}} Reports system information * <code>[[unlink (Unix)|unlink]]</code> {{endash}} Removes files via <code>unlink()</code> function * <code>[[Uptime#coreutils|uptime]]</code> {{endash}} Reports how long the system has been running * <code>[[users (Unix)|users]]</code> {{endash}} Reports the user names of users currently logged into the current host * <code>[[who (Unix)|who]]</code> {{endash}} Reports logged-in users * <code>[[whoami]]</code> {{endash}} Reports the effective [[userid]] * <code>[[yes (Unix)|yes]]</code> {{endash}} Outputs a string repeatedly * <code>[</code> {{endash}} Synonym for [[test (Unix)|test]] that enables expressions like <code>[ ''expression'' ]</code> <!-- DO NOT REMOVE THE SPACE AFTER '[' as it's required for command-line syntax --> ==History== In 1990, David MacKenzie announced ''GNU fileutils''.<ref>{{cite web |title=GNU file utilities release 1.0 |url=https://groups.google.com/g/gnu.utils.bug/c/CviP42X_hCY/m/YssXFn-JrX4J |website=groups.google.com}}</ref> In 1991, MacKenzie announced ''GNU shellutils'' and ''GNU textutils''.<ref>{{cite web |title=GNU shell programming utilities released |url=https://groups.google.com/g/gnu.utils.bug/c/xpTRtuFpNQc/m/mRc_7JWZ0BYJ |website=groups.google.com}}</ref><ref>{{cite web |title=new GNU file and text utilities released |url=https://groups.google.com/g/gnu.utils.bug/c/iN5KuoJYRhU/m/V_6oiBAWF0EJ |website=groups.google.com}}</ref> Moreover, Jim Meyering became the maintainer of the packages (known now as coreutils) and has remained so since.<ref>{{cite web |title=GNU's Who |url=https://www.gnu.org/people/people.html#j}}</ref> In September 2002, the ''GNU coreutils'' were created by merging the earlier packages ''textutils'', ''shellutils'', and ''fileutils'', along with some other miscellaneous utilities.<ref name=merge>{{cite web | url=https://git.savannah.gnu.org/cgit/coreutils.git/tree/README-package-renamed-to-coreutils | title=README-package-renamed-to-coreutils | first=Jim | last=Meyering | date=2003-01-13 | access-date=2018-08-15 | archive-date=2019-12-25 | archive-url=https://web.archive.org/web/20191225234638/https://git.savannah.gnu.org/cgit/coreutils.git/tree/README-package-renamed-to-coreutils | url-status=live }}</ref> In July 2007, the license of the GNU coreutils was updated from [[GNU General Public License#Version 2|GPL-2.0-or-later]] to [[GNU General Public License#Version 3|GPL-3.0-or-later]].<ref>{{cite web | url=https://git.savannah.gnu.org/cgit/coreutils.git/commit/COPYING?id=5f606e6f1f0552c8af7b9cfbbafe3aad048bb99e | title=COPYING: Update to Version 3. | first=Jim | last=Meyering | date=2007-07-23 | access-date=2018-08-15 | archive-date=2019-12-25 | archive-url=https://web.archive.org/web/20191225234638/https://git.savannah.gnu.org/cgit/coreutils.git/commit/COPYING%3Fid%3D5f606e6f1f0552c8af7b9cfbbafe3aad048bb99e | url-status=live }}</ref> ==See also== {{Portal|Free and open-source software}} * {{Annotated link|GNOME Core Applications}} * {{Annotated link|GNU Binutils}} * {{Annotated link|List of GNU packages}} * {{Annotated link|List of KDE applications}} * {{Annotated link|List of POSIX commands}} * {{Annotated link|List of Unix daemons}} * {{Annotated link|List of web browsers for Unix and Unix-like operating systems}} * {{Annotated link|Toybox}} * {{Annotated link|Unix philosophy}} * {{Annotated link|util-linux}} <!--==Notes== {{notelist}} --> ==References== {{Reflist|30em}} ==External links== {{wikibooks|Guide to UNIX|Commands}} * {{Official website|https://www.gnu.org/software/coreutils/}} * [https://www.gnu.org/software/coreutils/manual/html_node/index.html Manual] * [https://git.savannah.gnu.org/cgit/coreutils.git/tree/README?h=v8.27#n8/ README] * [https://heirloom.sourceforge.net/tools.html The Heirloom Toolchest] - An alternative set of utilities * [https://opensource.com/article/18/4/gnu-core-utilities opensource.com article: gnu-core-utilities on 4 Apr 2018 by David Both (Correspondent) ] * [http://bhami.com/rosetta.html Rosetta Stone For *Nix] – configurable list of equivalent programs for *nix systems. * [https://web.archive.org/web/20240806230502/https://roesler-ac.de/wolfram/acro/ The Unix Acronym List] – explains the names of many Unix commands. * [http://unix.org/ The UNIX System Homepage] {{GNU}} {{Core Utilities commands}} {{Unix commands}} {{DEFAULTSORT:Gnu Core Utilities}} [[Category:Free software programmed in C]] [[Category:Free system software]] [[Category:GNU Project software|Core Utilities]] [[Category:Unix software]] [[Category:Lists of software|Unix programs]] [[Category:System administration]] [[Category:Unix SUS2008 utilities| ]]
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)
Pages transcluded onto the current version of this page
(
help
)
:
Template:Annotated link
(
edit
)
Template:Cite web
(
edit
)
Template:Code
(
edit
)
Template:Core Utilities commands
(
edit
)
Template:Endash
(
edit
)
Template:GNU
(
edit
)
Template:Infobox
(
edit
)
Template:Infobox software
(
edit
)
Template:Main other
(
edit
)
Template:Mono
(
edit
)
Template:Official website
(
edit
)
Template:Portal
(
edit
)
Template:Refimprove
(
edit
)
Template:Reflist
(
edit
)
Template:Short description
(
edit
)
Template:Sister project
(
edit
)
Template:Template other
(
edit
)
Template:Unix commands
(
edit
)
Template:Wikibooks
(
edit
)