أدوات جنو الأساسية

GNU Core Utilities
المطوّرGNU Project
مكتوب بلغةC, shell script[1]
نظام التشغيلUnix-like
النوعMiscellaneous utilities
الرخصة2007, GPL 3.0 or later since version 6.10
2002, GPL 2.0 or later until version 6.9
الموقع الإلكترونيwww.gnu.org/software/coreutils/

The GNU Core Utilities or coreutils is a collection of GNU software that implements many standard, Unix-based shell commands. The utilities generally provide POSIX compliant interface when the POSIXLY_CORRECT environment variable is set, but otherwise offers a superset to the standard interface. For example, the utilities support long options and options after parameters. This environment variable enables a different functionality in BSD.

Similar collections are available in the FOSS ecosystem, with a slightly different scope and focus (less functionality), or license. For example, BusyBox which is licensed under GPL-2.0-only, and Toybox which is licensed under 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 file system items including regular files and special files such as directories.

File utilities

  • chcon  – Changes file security context (SELinux)
  • chgrp  – Changes file group ownership
  • chown  – Changes file user ownership
  • chmod  – Changes file permissions
  • cp  – Copies files
  • dd  – Copies and converts file data
  • df  – Reports file system free space
  • dir  – Like ls -C -b; by default lists files in columns, sorted vertically
  • dircolors  – Configures colors used for ls output
  • install  – Copies files and sets file attributes
  • ln  – Creates a link to a file
  • ls  – Lists files
  • mkdir  – Creates directories
  • mkfifo  – Creates named pipes (FIFOs)
  • mknod  – Creates block or character special files
  • mktemp  – Creates temporary regular files or directories
  • mv  – Moves and renames files
  • realpath  – Reports the absolute or relative path of a file
  • rm  – Deletes files
  • rmdir  – Deletes empty directories
  • shred  – Overwrites a file to hide its contents and optionally deletes it
  • sync  – Flushes file system buffers
  • touch  – Changes file timestamps; creating files if they do not exist
  • truncate  – Sets the size of a file via truncation or extension
  • vdir  – Like ls -l -b; by default lists files in long format

Text utilities

  • b2sum  – Computes and checks BLAKE2b message digest
  • base32  – Encodes or decodes base32
  • base64  – Encodes or decodes base64
  • basenc  – Encodes or decodes various encodings including hexadecimal, base32, base64, and Z85
  • cat  – Concatenates files
  • cksum  – Report or compute the checksum of files
  • comm  – Compares two sorted files line by line
  • csplit  – Splits a file into sections determined by context lines
  • cut  – Removes sections from each line of files
  • expand  – Converts tabs to spaces
  • fmt  – Formats text
  • fold  – Wraps each input line to fit in specified width
  • head  – Outputs the first part of files
  • join  – Joins lines of two files on a common field
  • md5sum  – Computes and checks MD5 message digest
  • nl  – Numbers lines of files
  • numfmt  – Formats numbers
  • od  – Dumps files in octal and other formats
  • paste  – Merges lines of files
  • ptx  – Produces a permuted index of file contents
  • pr  – Paginates or columnates files
  • sha1sum, sha224sum, sha256sum, sha384sum, sha512sum  – Computes and checks SHA-1/SHA-2 message digests
  • shuf  – Generates random permutations
  • sort  – Sorts lines of text files
  • split  – Splits a file into pieces
  • sum  – Checksums and counts the blocks in a file
  • tac  – Concatenates files in reverse order; line by line
  • tail  – Outputs the last part of files
  • tr  – Translates or deletes characters
  • tsort  – Performs a topological sort
  • unexpand  – Converts spaces to tabs
  • uniq  – Removes duplicate lines from a sorted file
  • wc  – Reports the number of bytes, words, and lines in files

Shell utilities

  • arch  – Reports machine hardware name; same as uname -m
  • basename  – Removes the path prefix from a given pathname
  • chroot  – Changes the root directory
  • date  – Reports or sets the system date and time
  • dirname  – Strips non-directory suffix from file name
  • du  – Shows disk usage on file systems
  • echo  – Outputs text
  • env  – Reports and modifies environment variables
  • expr  – Evaluates expressions
  • factor  – Factors numbers
  • false  – Does nothing but exit with unsuccessful status
  • groups  – Reports the groups of which the user is a member
  • hostid  – Reports the numeric identifier for the current host
  • id  – Reports the real or effective UID and GID
  • link  – Creates a link to a file
  • logname  – Reports the user's login name
  • nice  – Modifies scheduling priority
  • nohup  – Allows a command to continue running after logging out
  • nproc  – Queries the number of (active) processors
  • pathchk  – Checks whether file names are valid or portable
  • pinky  – A lightweight version of finger
  • printenv  – Reports environment variables
  • printf  – Formats text
  • pwd  – Reports the current working directory
  • readlink  – Reports the value of a symbolic link
  • runcon  – Run command with specified security context
  • seq  – Reports a sequence of numbers
  • sleep  – Blocks (delays, waits) for a specified amount of time
  • stat  – Reports information about an inode
  • stdbuf  – Runs a command with custom standard streams configuration
  • stty  – Changes and reports terminal line settings
  • tee  – Sends output to multiple files
  • test  – Evaluates an expression
  • timeout  – Runs a command with a time limit
  • true  – Does nothing but exit with success status
  • tty  – Reports the terminal name
  • uname  – Reports system information
  • unlink  – Removes files via unlink() function
  • uptime  – Reports how long the system has been running
  • users  – Reports the user names of users currently logged into the current host
  • who  – Reports logged-in users
  • whoami  – Reports the effective userid
  • yes  – Outputs a string repeatedly
  • [  – Synonym for test that enables expressions like [ expression ]

التاريخ

In 1990, David MacKenzie announced GNU fileutils.[2]

In 1991, MacKenzie announced GNU shellutils and GNU textutils.[3][4] Moreover, Jim Meyering became the maintainer of the packages (known now as coreutils) and has remained so since.[5]

In September 2002, the GNU coreutils were created by merging the earlier packages textutils, shellutils, and fileutils, along with some other miscellaneous utilities.[6]

In July 2007, the license of the GNU coreutils was updated from GPL-2.0-or-later to GPL-3.0-or-later.[7]

See also


References

  1. ^ "The GNU Core Utilities Open Source Project on Open Hub: Languages Page". Archived from the original on 2019-03-28. Retrieved 2019-03-28.
  2. ^ "GNU file utilities release 1.0". groups.google.com.
  3. ^ "GNU shell programming utilities released". groups.google.com.
  4. ^ "new GNU file and text utilities released". groups.google.com.
  5. ^ "GNU's Who".
  6. ^ Meyering, Jim (2003-01-13). "README-package-renamed-to-coreutils". Archived from the original on 2019-12-25. Retrieved 2018-08-15.
  7. ^ Meyering, Jim (2007-07-23). "COPYING: Update to Version 3". Archived from the original on 2019-12-25. Retrieved 2018-08-15.

وصلات خارجية

هناك كتاب ، Guide to UNIX، في معرفة الكتب.


قالب:Core Utilities commands قالب:Unix commands