]> git.pld-linux.org Git - packages/coreutils.git/blobdiff - coreutils-info.patch
up to 9.3
[packages/coreutils.git] / coreutils-info.patch
index 7611b4ed7911dbd44e7f7d4bd4728b448cd29e7c..98476ce395bdaed63654e0a048c99343477db072 100644 (file)
@@ -1,6 +1,6 @@
---- coreutils-4.5.9/doc/coreutils.texi.orig    Sun Mar  2 19:09:14 2003
-+++ coreutils-4.5.9/doc/coreutils.texi Thu Mar  6 23:36:08 2003
-@@ -20,102 +20,91 @@
+--- coreutils-9.2/doc/coreutils.texi.orig      2023-03-13 19:08:10.000000000 +0100
++++ coreutils-9.2/doc/coreutils.texi   2023-03-24 12:19:31.822135178 +0100
+@@ -24,123 +24,112 @@
  @syncodeindex pg cp
  @syncodeindex vr cp
  
@@ -8,18 +8,30 @@
 +@dircategory Core utilities:
  @direntry
 -* Coreutils: (coreutils).       Core GNU (file, text, shell) utilities.
--* Common options: (coreutils)Common options.      Common options.
++* Coreutils: (coreutils).             Core GNU (file, text, shell) utilities
+ * Common options: (coreutils)Common options.
 -* File permissions: (coreutils)File permissions.  Access modes.
--* Date input formats: (coreutils)Date input formats.
++* File permissions: (coreutils)File permissions.      Access modes.
+ * Date input formats: (coreutils)Date input formats.
 -@end direntry
 -
+-@c FIXME: the following need documentation
+-@c * [: (coreutils)[ invocation.                   File/string tests.
+-@c * pinky: (coreutils)pinky invocation.           FIXME.
+-
 -@dircategory Individual utilities
 -@direntry
+-* arch: (coreutils)arch invocation.             Print machine hardware name.
+-* b2sum: (coreutils)b2sum invocation.           Print or check BLAKE2 digests.
+-* base32: (coreutils)base32 invocation.         Base32 encode/decode data.
+-* base64: (coreutils)base64 invocation.         Base64 encode/decode data.
 -* basename: (coreutils)basename invocation.     Strip directory and suffix.
+-* basenc: (coreutils)basenc invocation.         Encoding/decoding of data.
 -* cat: (coreutils)cat invocation.               Concatenate and write files.
+-* chcon: (coreutils)chcon invocation.           Change SELinux CTX of files.
 -* chgrp: (coreutils)chgrp invocation.           Change file groups.
--* chmod: (coreutils)chmod invocation.           Change file permissions.
--* chown: (coreutils)chown invocation.           Change file owners/groups.
+-* chmod: (coreutils)chmod invocation.           Change access permissions.
+-* chown: (coreutils)chown invocation.           Change file owners and groups.
 -* chroot: (coreutils)chroot invocation.         Specify the root directory.
 -* cksum: (coreutils)cksum invocation.           Print POSIX CRC checksum.
 -* comm: (coreutils)comm invocation.             Compare sorted files by line.
 -* cut: (coreutils)cut invocation.               Print selected parts of lines.
 -* date: (coreutils)date invocation.             Print/set system date and time.
 -* dd: (coreutils)dd invocation.                 Copy and convert a file.
--* df: (coreutils)df invocation.                 Report filesystem disk usage.
+-* df: (coreutils)df invocation.                 Report file system usage.
 -* dir: (coreutils)dir invocation.               List directories briefly.
 -* dircolors: (coreutils)dircolors invocation.   Color setup for ls.
--* dirname: (coreutils)dirname invocation.       Strip non-directory suffix.
--* du: (coreutils)du invocation.                 Report on disk usage.
+-* dirname: (coreutils)dirname invocation.       Strip last file name component.
+-* du: (coreutils)du invocation.                 Report file usage.
 -* echo: (coreutils)echo invocation.             Print a line of text.
 -* env: (coreutils)env invocation.               Modify the environment.
 -* expand: (coreutils)expand invocation.         Convert tabs to spaces.
 -* head: (coreutils)head invocation.             Output the first part of files.
 -* hostid: (coreutils)hostid invocation.         Print numeric host identifier.
 -* hostname: (coreutils)hostname invocation.     Print or set system name.
--* id: (coreutils)id invocation.                 Print real/effective uid/gid.
--* install: (coreutils)install invocation.       Copy and change attributes.
+-* id: (coreutils)id invocation.                 Print user identity.
+-* install: (coreutils)install invocation.       Copy files and set attributes.
 -* join: (coreutils)join invocation.             Join lines on a common field.
 -* kill: (coreutils)kill invocation.             Send a signal to processes.
 -* link: (coreutils)link invocation.             Make hard links between files.
 -* ln: (coreutils)ln invocation.                 Make links between files.
 -* logname: (coreutils)logname invocation.       Print current login name.
 -* ls: (coreutils)ls invocation.                 List directory contents.
--* md5sum: (coreutils)md5sum invocation.         Print or check message-digests.
+-* md5sum: (coreutils)md5sum invocation.         Print or check MD5 digests.
 -* mkdir: (coreutils)mkdir invocation.           Create directories.
 -* mkfifo: (coreutils)mkfifo invocation.         Create FIFOs (named pipes).
 -* mknod: (coreutils)mknod invocation.           Create special files.
+-* mktemp: (coreutils)mktemp invocation.         Create temporary files.
 -* mv: (coreutils)mv invocation.                 Rename files.
--* nice: (coreutils)nice invocation.             Modify scheduling priority.
+-* nice: (coreutils)nice invocation.             Modify niceness.
 -* nl: (coreutils)nl invocation.                 Number lines and write files.
 -* nohup: (coreutils)nohup invocation.           Immunize to hangups.
+-* nproc: (coreutils)nproc invocation.           Print the number of processors.
+-* numfmt: (coreutils)numfmt invocation.         Reformat numbers.
 -* od: (coreutils)od invocation.                 Dump files in octal, etc.
 -* paste: (coreutils)paste invocation.           Merge lines of files.
 -* pathchk: (coreutils)pathchk invocation.       Check file name portability.
 -* ptx: (coreutils)ptx invocation.               Produce permuted indexes.
 -* pwd: (coreutils)pwd invocation.               Print working directory.
 -* readlink: (coreutils)readlink invocation.     Print referent of a symlink.
+-* realpath: (coreutils)realpath invocation.     Print resolved file names.
 -* rm: (coreutils)rm invocation.                 Remove files.
 -* rmdir: (coreutils)rmdir invocation.           Remove empty directories.
+-* runcon: (coreutils)runcon invocation.         Run in specified SELinux CTX.
 -* seq: (coreutils)seq invocation.               Print numeric sequences
+-* sha1sum: (coreutils)sha1sum invocation.       Print or check SHA-1 digests.
+-* sha2: (coreutils)sha2 utilities.              Print or check SHA-2 digests.
 -* shred: (coreutils)shred invocation.           Remove files more securely.
+-* shuf: (coreutils)shuf invocation.             Shuffling text files.
 -* sleep: (coreutils)sleep invocation.           Delay for a specified time.
 -* sort: (coreutils)sort invocation.             Sort text files.
--* split: (coreutils)split invocation.           Split into fixed-size pieces.
+-* split: (coreutils)split invocation.           Split into pieces.
 -* stat: (coreutils)stat invocation.             Report file(system) status.
+-* stdbuf: (coreutils)stdbuf invocation.         Modify stdio buffering.
 -* stty: (coreutils)stty invocation.             Print/change terminal settings.
--* su: (coreutils)su invocation.                 Modify user and group id.
 -* sum: (coreutils)sum invocation.               Print traditional checksum.
--* sync: (coreutils)sync invocation.             Synchronize memory and disk.
+-* sync: (coreutils)sync invocation.             Sync files to stable storage.
 -* tac: (coreutils)tac invocation.               Reverse files.
 -* tail: (coreutils)tail invocation.             Output the last part of files.
 -* tee: (coreutils)tee invocation.               Redirect to multiple files.
 -* test: (coreutils)test invocation.             File/string tests.
+-* timeout: (coreutils)timeout invocation.       Run with time limit.
 -* touch: (coreutils)touch invocation.           Change file timestamps.
 -* tr: (coreutils)tr invocation.                 Translate characters.
 -* true: (coreutils)true invocation.             Do nothing, successfully.
+-* truncate: (coreutils)truncate invocation.     Shrink/extend size of a file.
 -* tsort: (coreutils)tsort invocation.           Topological sort.
 -* tty: (coreutils)tty invocation.               Print terminal name.
 -* uname: (coreutils)uname invocation.           Print system information.
 -* unexpand: (coreutils)unexpand invocation.     Convert spaces to tabs.
 -* uniq: (coreutils)uniq invocation.             Uniquify files.
 -* unlink: (coreutils)unlink invocation.         Removal via unlink(2).
+-* uptime: (coreutils)uptime invocation.         Print uptime and load.
 -* users: (coreutils)users invocation.           Print current user names.
 -* vdir: (coreutils)vdir invocation.             List directories verbosely.
--* wc: (coreutils)wc invocation.                 Byte, word, and line counts.
+-* wc: (coreutils)wc invocation.                 Line, word, and byte counts.
 -* who: (coreutils)who invocation.               Print who is logged in.
--* whoami: (coreutils)whoami invocation.         Print effective user id.
+-* whoami: (coreutils)whoami invocation.         Print effective user ID.
 -* yes: (coreutils)yes invocation.               Print a string indefinitely.
-+* basename: (coreutils)basename.      Strip directory and suffix
-+* cat: (coreutils)cat.                        Concatenate and write files
-+* chgrp: (coreutils)chgrp.            Change file groups
-+* chmod: (coreutils)chmod.            Change file permissions
-+* chown: (coreutils)chown.            Change file owners/groups
-+* chroot: (coreutils)chroot.          Specify the root directory
-+* cksum: (coreutils)cksum.            Print POSIX CRC checksum
-+* comm: (coreutils)comm.              Compare sorted files by line
-+* cp: (coreutils)cp.                  Copy files
-+* csplit: (coreutils)csplit.          Split by context
-+* cut: (coreutils)cut.                        Print selected parts of lines
-+* date: (coreutils)date.              Print/set system date and time
-+* dd: (coreutils)dd.                  Copy and convert a file
-+* df: (coreutils)df.                  Report filesystem disk usage
-+* dir: (coreutils)dir.                        List directories briefly
-+* dircolors: (coreutils)dircolors.    Color setup for ls
-+* dirname: (coreutils)dirname.                Strip non-directory suffix
-+* du: (coreutils)du.                  Report on disk usage
-+* echo: (coreutils)echo.              Print a line of text
-+* env: (coreutils)env.                        Modify the environment
-+* expand: (coreutils)expand.          Convert tabs to spaces
-+* expr: (coreutils)expr.              Evaluate expressions
++* arch: (coreutils)arch.              Print machine hardware name.
++* b2sum: (coreutils)b2sum.            Print or check BLAKE2 digests.
++* base32: (coreutils)base32.          Base32 encode/decode data.
++* base64: (coreutils)base64.          Base64 encode/decode data.
++* basename: (coreutils)basename.      Strip directory and suffix.
++* basenc: (coreutils)basenc.          Encoding/decoding of data.
++* cat: (coreutils)cat.                        Concatenate and write files.
++* chcon: (coreutils)chcon.            Change SELinux CTX of files.
++* chgrp: (coreutils)chgrp.            Change file groups.
++* chmod: (coreutils)chmod.            Change access permissions.
++* chown: (coreutils)chown.            Change file owners and groups.
++* chroot: (coreutils)chroot.          Specify the root directory.
++* cksum: (coreutils)cksum.            Print POSIX CRC checksum.
++* comm: (coreutils)comm.              Compare sorted files by line.
++* cp: (coreutils)cp.                  Copy files.
++* csplit: (coreutils)csplit.          Split by context.
++* cut: (coreutils)cut.                        Print selected parts of lines.
++* date: (coreutils)date.              Print/set system date and time.
++* dd: (coreutils)dd.                  Copy and convert a file.
++* df: (coreutils)df.                  Report file system usage.
++* dir: (coreutils)dir.                        List directories briefly.
++* dircolors: (coreutils)dircolors.    Color setup for ls.
++* dirname: (coreutils)dirname.                Strip last file name component.
++* du: (coreutils)du.                  Report file usage.
++* echo: (coreutils)echo.              Print a line of text.
++* env: (coreutils)env.                        Modify the environment.
++* expand: (coreutils)expand.          Convert tabs to spaces.
++* expr: (coreutils)expr.              Evaluate expressions.
 +* factor: (coreutils)factor.          Print prime factors
-+* false: (coreutils)false.            Do nothing, unsuccessfully
-+* fmt: (coreutils)fmt.                        Reformat paragraph text
-+* fold: (coreutils)fold.              Wrap long input lines
-+* head: (coreutils)head.              Output the first part of files
-+* hostid: (coreutils)hostid.          Print numeric host identifier
-+* id: (coreutils)id.                  Print real/effective uid/gid
-+* install: (coreutils)install.                Copy and change attributes
-+* join: (coreutils)join.              Join lines on a common field
-+* link: (coreutils)link.              Make hard links between files
-+* ln: (coreutils)ln.                  Make links between files
-+* logname: (coreutils)logname.                Print current login name
-+* ls: (coreutils)ls.                  List directory contents
-+* md5sum: (coreutils)md5sum.          Print or check message-digests
-+* mkdir: (coreutils)mkdir.            Create directories
-+* mkfifo: (coreutils)mkfifo.          Create FIFOs (named pipes)
-+* mknod: (coreutils)mknod.            Create special files
-+* mv: (coreutils)mv.                  Rename files
-+* nice: (coreutils)nice.              Modify scheduling priority
-+* nl: (coreutils)nl.                  Number lines and write files
-+* nohup: (coreutils)nohup.            Immunize to hangups
++* false: (coreutils)false.            Do nothing, unsuccessfully.
++* fmt: (coreutils)fmt.                        Reformat paragraph text.
++* fold: (coreutils)fold.              Wrap long input lines.
++* groups: (coreutils)groups.          Print group names a user is in.
++* head: (coreutils)head.              Output the first part of files.
++* hostid: (coreutils)hostid.          Print numeric host identifier.
++* id: (coreutils)id.                  Print user identity.
++* install: (coreutils)install.                Copy files and set attributes.
++* join: (coreutils)join.              Join lines on a common field.
++* link: (coreutils)link.              Make hard links between files.
++* ln: (coreutils)ln.                  Make links between files.
++* logname: (coreutils)logname.                Print current login name.
++* ls: (coreutils)ls.                  List directory contents.
++* md5sum: (coreutils)md5sum.          Print or check MD5 digests.
++* mkdir: (coreutils)mkdir.            Create directories.
++* mkfifo: (coreutils)mkfifo.          Create FIFOs (named pipes).
++* mknod: (coreutils)mknod.            Create special files.
++* mktemp: (coreutils)mktemp.          Create temporary files.
++* mv: (coreutils)mv.                  Rename files.
++* nice: (coreutils)nice.              Modify niceness.
++* nl: (coreutils)nl.                  Number lines and write files.
++* nohup: (coreutils)nohup.            Immunize to hangups.
++* nproc: (coreutils)nproc.            Print the number of processors.
++* numfmt: (coreutils)numfmt.          Reformat numbers.
 +* od: (coreutils)od.                  Dump files in octal, etc.
-+* paste: (coreutils)paste.            Merge lines of files
-+* pathchk: (coreutils)pathchk.                Check file name portability
-+* pr: (coreutils)pr.                  Paginate or columnate files
-+* printenv: (coreutils)printenv.      Print environment variables
-+* printf: (coreutils)printf.          Format and print data
-+* ptx: (coreutils)ptx.                        Produce permuted indexes
-+* pwd: (coreutils)pwd.                        Print working directory
-+* readlink: (coreutils)readlink.      Print referent of a symlink
-+* rm: (coreutils)rm.                  Remove files
-+* rmdir: (coreutils)rmdir.            Remove empty directories
++* paste: (coreutils)paste.            Merge lines of files.
++* pathchk: (coreutils)pathchk.                Check file name portability.
++* pr: (coreutils)pr.                  Paginate or columnate files.
++* printenv: (coreutils)printenv.      Print environment variables.
++* printf: (coreutils)printf.          Format and print data.
++* ptx: (coreutils)ptx.                        Produce permuted indexes.
++* pwd: (coreutils)pwd.                        Print working directory.
++* readlink: (coreutils)readlink.      Print referent of a symlink.
++* realpath: (coreutils)realpath.      Print resolved file names.
++* rm: (coreutils)rm.                  Remove files.
++* rmdir: (coreutils)rmdir.            Remove empty directories.
++* runcon: (coreutils)runcon.          Run in specified SELinux CTX.
 +* seq: (coreutils)seq.                        Print numeric sequences
-+* shred: (coreutils)shred.            Remove files more securely
-+* sleep: (coreutils)sleep.            Delay for a specified time
-+* sort: (coreutils)sort.              Sort text files
-+* split: (coreutils)split.            Split into fixed-size pieces
-+* stat: (coreutils)stat.              Report file(system) status
-+* stty: (coreutils)stty.              Print/change terminal settings
-+* su: (coreutils)su.                  Modify user and group id
-+* sum: (coreutils)sum.                        Print traditional checksum
-+* sync: (coreutils)sync.              Synchronize memory and disk
-+* tac: (coreutils)tac.                        Reverse files
-+* tail: (coreutils)tail.              Output the last part of files
-+* tee: (coreutils)tee.                        Redirect to multiple files
-+* test: (coreutils)test.              File/string tests
-+* touch: (coreutils)touch.            Change file timestamps
-+* tr: (coreutils)tr.                  Translate characters
-+* true: (coreutils)true.              Do nothing, successfully
-+* tsort: (coreutils)tsort.            Topological sort
-+* tty: (coreutils)tty.                        Print terminal name
-+* uname: (coreutils)uname.            Print system information
-+* unexpand: (coreutils)unexpand.      Convert spaces to tabs
-+* uniq: (coreutils)uniq.              Uniquify files
-+* unlink: (coreutils)unlink.          Removal via unlink(2)
-+* users: (coreutils)users.            Print current user names
-+* vdir: (coreutils)vdir.              List directories verbosely
-+* wc: (coreutils)wc.                  Byte, word, and line counts
-+* who: (coreutils)who.                        Print who is logged in
-+* whoami: (coreutils)whoami.          Print effective user id
-+* yes: (coreutils)yes.                        Print a string indefinitely
++* sha1sum: (coreutils)sha1sum.                Print or check SHA-1 digests.
++* sha2: (coreutils)sha2 utilities.    Print or check SHA-2 digests.
++* shred: (coreutils)shred.            Remove files more securely.
++* shuf: (coreutils)shuf.              Shuffling text files.
++* sleep: (coreutils)sleep.            Delay for a specified time.
++* sort: (coreutils)sort.              Sort text files.
++* split: (coreutils)split.            Split into pieces.
++* stat: (coreutils)stat.              Report file(system) status.
++* stdbuf: (coreutils)stdbuf.          Modify stdio buffering.
++* stty: (coreutils)stty.              Print/change terminal settings.
++* sum: (coreutils)sum.                        Print traditional checksum.
++* sync: (coreutils)sync.              Sync files to stable storage.
++* tac: (coreutils)tac.                        Reverse files.
++* tail: (coreutils)tail.              Output the last part of files.
++* tee: (coreutils)tee.                        Redirect to multiple files.
++* test: (coreutils)test.              File/string tests.
++* timeout: (coreutils)timeout.                Run with time limit.
++* touch: (coreutils)touch.            Change file timestamps.
++* tr: (coreutils)tr.                  Translate characters.
++* true: (coreutils)true.              Do nothing, successfully.
++* truncate: (coreutils)truncate.      Shrink/extend size of a file.
++* tsort: (coreutils)tsort.            Topological sort.
++* tty: (coreutils)tty.                        Print terminal name.
++* uname: (coreutils)uname.            Print system information.
++* unexpand: (coreutils)unexpand.      Convert spaces to tabs.
++* uniq: (coreutils)uniq.              Uniquify files.
++* unlink: (coreutils)unlink.          Removal via unlink(2).
++* users: (coreutils)users.            Print current user names.
++* vdir: (coreutils)vdir.              List directories verbosely.
++* wc: (coreutils)wc.                  Line, word, and byte counts.
++* who: (coreutils)who.                        Print who is logged in.
++* whoami: (coreutils)whoami.          Print effective user ID.
++* yes: (coreutils)yes.                        Print a string indefinitely.
  @end direntry
  
  @copying
-@@ -179,10 +168,9 @@
- * Redirection::                        tee
- * File name manipulation::             dirname basename pathchk
- * Working context::                    pwd stty printenv tty
--* User information::                   id logname whoami groups users who
--* System context::                     date uname hostname
-+* User information::                   id logname whoami users who
-+* System context::                     date uname
- * Modified command invocation::        chroot env nice nohup su
--* Process control::                    kill
- * Delaying::                           sleep
- * Numeric operations::                 factor seq
- * File permissions::                   Access modes.
-@@ -205,38 +193,38 @@
+@@ -205,10 +194,9 @@ Free Documentation License''.
+ * File name manipulation::       dirname basename pathchk mktemp realpath
+ * Working context::              pwd stty printenv tty
+ * User information::             id logname whoami groups users who
+-* System context::               date arch nproc uname hostname hostid uptime
++* System context::               date arch nproc uname hostid
+ * SELinux context::              chcon runcon
+ * Modified command invocation::  chroot env nice nohup stdbuf timeout
+-* Process control::              kill
+ * Delaying::                     sleep
+ * Numeric operations::           factor numfmt seq
+ * File permissions::             Access modes
+@@ -240,45 +228,45 @@ Common Options
  
  Output of entire files
  
--* cat invocation::              Concatenate and write files.
--* tac invocation::              Concatenate and write files in reverse.
--* nl invocation::               Number lines and write files.
--* od invocation::               Write files in octal or other formats.
-+* cat::                         Concatenate and write files.
-+* tac::                         Concatenate and write files in reverse.
-+* nl::                          Number lines and write files.
-+* od::                          Write files in octal or other formats.
+-* cat invocation::               Concatenate and write files
+-* tac invocation::               Concatenate and write files in reverse
+-* nl invocation::                Number lines and write files
+-* od invocation::                Write files in octal or other formats
+-* base32 invocation::            Transform data into printable data
+-* base64 invocation::            Transform data into printable data
+-* basenc invocation::            Transform data into printable data
++* cat::                          Concatenate and write files
++* tac::                          Concatenate and write files in reverse
++* nl::                           Number lines and write files
++* od::                           Write files in octal or other formats
++* base32::                       Transform data into printable data
++* base64::                       Transform data into printable data
++* basenc::                       Transform data into printable data
  
  Formatting file contents
  
--* fmt invocation::              Reformat paragraph text.
--* pr invocation::               Paginate or columnate files for printing.
--* fold invocation::             Wrap input lines to fit in specified width.
-+* fmt::                         Reformat paragraph text.
-+* pr::                          Paginate or columnate files for printing.
-+* fold::                        Wrap input lines to fit in specified width.
+-* fmt invocation::               Reformat paragraph text
+-* pr invocation::                Paginate or columnate files for printing
+-* fold invocation::              Wrap input lines to fit in specified width
++* fmt::                          Reformat paragraph text
++* pr::                           Paginate or columnate files for printing
++* fold::                         Wrap input lines to fit in specified width
  
  Output of parts of files
  
--* head invocation::             Output the first part of files.
--* tail invocation::             Output the last part of files.
--* split invocation::            Split a file into fixed-size pieces.
--* csplit invocation::           Split a file into context-determined pieces.
-+* head::                        Output the first part of files.
-+* tail::                        Output the last part of files.
-+* split::                       Split a file into fixed-size pieces.
-+* csplit::                      Split a file into context-determined pieces.
+-* head invocation::              Output the first part of files
+-* tail invocation::              Output the last part of files
+-* split invocation::             Split a file into fixed-size pieces
+-* csplit invocation::            Split a file into context-determined pieces
++* head::                         Output the first part of files
++* tail::                         Output the last part of files
++* split::                        Split a file into fixed-size pieces
++* csplit::                       Split a file into context-determined pieces
  
  Summarizing files
  
--* wc invocation::               Print byte, word, and line counts.
--* sum invocation::              Print checksum and block counts.
--* cksum invocation::            Print CRC checksum and byte counts.
--* md5sum invocation::           Print or check message-digests.
-+* wc::                          Print byte, word, and line counts.
-+* sum::                         Print checksum and block counts.
-+* cksum::                       Print CRC checksum and byte counts.
-+* md5sum::                      Print or check message-digests.
+-* wc invocation::                Print newline, word, and byte counts
+-* sum invocation::               Print checksum and block counts
+-* cksum invocation::             Print CRC checksum and byte counts
+-* b2sum invocation::             Print or check BLAKE2 digests
+-* md5sum invocation::            Print or check MD5 digests
+-* sha1sum invocation::           Print or check SHA-1 digests
++* wc::                           Print newline, word, and byte counts
++* sum::                          Print checksum and block counts
++* cksum::                        Print CRC checksum and byte counts
++* b2sum::                        Print or check BLAKE2 digests
++* md5sum::                       Print or check MD5 digests
++* sha1sum::                      Print or check SHA-1 digests
+ * sha2 utilities::               Print or check SHA-2 digests
  
  Operating on sorted files
  
--* sort invocation::             Sort text files.
--* uniq invocation::             Uniquify files.
--* comm invocation::             Compare two sorted files line by line.
--* ptx invocation::              Produce a permuted index of file contents.
--* tsort invocation::            Topological sort.
-+* sort::                        Sort text files.
-+* uniq::                        Uniquify files.
-+* comm::                        Compare two sorted files line by line.
-+* ptx::                         Produce a permuted index of file contents.
-+* tsort::                       Topological sort.
+-* sort invocation::              Sort text files
+-* shuf invocation::              Shuffle text files
+-* uniq invocation::              Uniquify files
+-* comm invocation::              Compare two sorted files line by line
+-* ptx invocation::               Produce a permuted index of file contents
+-* tsort invocation::             Topological sort
++* sort::                         Sort text files
++* shuf::                         Shuffle text files
++* uniq::                         Uniquify files
++* comm::                         Compare two sorted files line by line
++* ptx::                          Produce a permuted index of file contents
++* tsort::                        Topological sort
  
  @command{ptx}: Produce permuted indexes
  
-@@ -248,15 +236,15 @@
+@@ -290,15 +278,15 @@ Operating on sorted files
  
- Operating on fields within a line
+ Operating on fields
  
--* cut invocation::              Print selected parts of lines.
--* paste invocation::            Merge lines of files.
--* join invocation::             Join lines on a common field.
-+* cut::                         Print selected parts of lines.
-+* paste::                       Merge lines of files.
-+* join::                        Join lines on a common field.
+-* cut invocation::               Print selected parts of lines
+-* paste invocation::             Merge lines of files
+-* join invocation::              Join lines on a common field
++* cut::                          Print selected parts of lines
++* paste::                        Merge lines of files
++* join::                         Join lines on a common field
  
  Operating on characters
  
--* tr invocation::               Translate, squeeze, and/or delete characters.
--* expand invocation::           Convert tabs to spaces.
--* unexpand invocation::         Convert spaces to tabs.
-+* tr::                          Translate, squeeze, and/or delete characters.
-+* expand::                      Convert tabs to spaces.
-+* unexpand::                    Convert spaces to tabs.
+-* tr invocation::                Translate, squeeze, and/or delete characters
+-* expand invocation::            Convert tabs to spaces
+-* unexpand invocation::          Convert spaces to tabs
++* tr::                           Translate, squeeze, and/or delete characters
++* expand::                       Convert tabs to spaces
++* unexpand::                     Convert spaces to tabs
  
  @command{tr}: Translate, squeeze, and/or delete characters
  
-@@ -267,10 +255,10 @@
+@@ -308,10 +296,10 @@ Operating on characters
  
  Directory listing
  
--* ls invocation::               List directory contents
--* dir invocation::              Briefly list directory contents
--* vdir invocation::             Verbosely list directory contents
--* dircolors invocation::        Color setup for @command{ls}
-+* ls::                          List directory contents
-+* dir::                         Briefly list directory contents
-+* vdir::                        Verbosely list directory contents
-+* dircolors::                   Color setup for @command{ls}
+-* ls invocation::                List directory contents
+-* dir invocation::               Briefly list directory contents
+-* vdir invocation::              Verbosely list directory contents
+-* dircolors invocation::         Color setup for @command{ls}
++* ls::                           List directory contents
++* dir::                          Briefly list directory contents
++* vdir::                         Verbosely list directory contents
++* dircolors::                    Color setup for @command{ls}
  
  @command{ls}:  List directory contents
  
-@@ -283,50 +271,50 @@
+@@ -323,51 +311,51 @@ Directory listing
  
  Basic operations
  
--* cp invocation::               Copy files and directories
--* dd invocation::               Convert and copy a file
--* install invocation::          Copy files and set attributes
--* mv invocation::               Move (rename) files
--* rm invocation::               Remove files or directories
--* shred invocation::            Remove files more securely
-+* cp::                          Copy files and directories
-+* dd::                          Convert and copy a file
-+* install::                     Copy files and set attributes
-+* mv::                          Move (rename) files
-+* rm::                          Remove files or directories
-+* shred::                       Remove files more securely
+-* cp invocation::                Copy files and directories
+-* dd invocation::                Convert and copy a file
+-* install invocation::           Copy files and set attributes
+-* mv invocation::                Move (rename) files
+-* rm invocation::                Remove files or directories
+-* shred invocation::             Remove files more securely
++* cp::                           Copy files and directories
++* dd::                           Convert and copy a file
++* install::                      Copy files and set attributes
++* mv::                           Move (rename) files
++* rm::                           Remove files or directories
++* shred::                        Remove files more securely
  
  Special file types
  
--* link invocation::             Make a hard link via the link syscall
--* ln invocation::               Make links between files
--* mkdir invocation::            Make directories
--* mkfifo invocation::           Make FIFOs (named pipes)
--* mknod invocation::            Make block or character special files
--* readlink invocation::         Print the referent of a symbolic link
--* rmdir invocation::            Remove empty directories
--* unlink invocation::           Remove files via unlink syscall
-+* link::                        Make a hard link via the link syscall
-+* ln::                          Make links between files
-+* mkdir::                       Make directories
-+* mkfifo::                      Make FIFOs (named pipes)
-+* mknod::                       Make block or character special files
-+* readlink::                    Print the referent of a symbolic link
-+* rmdir::                       Remove empty directories
-+* unlink::                      Remove files via unlink syscall
+-* link invocation::              Make a hard link via the link syscall
+-* ln invocation::                Make links between files
+-* mkdir invocation::             Make directories
+-* mkfifo invocation::            Make FIFOs (named pipes)
+-* mknod invocation::             Make block or character special files
+-* readlink invocation::          Print value of a symlink or canonical file name
+-* rmdir invocation::             Remove empty directories
+-* unlink invocation::            Remove files via unlink syscall
++* link::                         Make a hard link via the link syscall
++* ln::                           Make links between files
++* mkdir::                        Make directories
++* mkfifo::                       Make FIFOs (named pipes)
++* mknod::                        Make block or character special files
++* readlink::                     Print value of a symlink or canonical file name
++* rmdir::                        Remove empty directories
++* unlink::                       Remove files via unlink syscall
  
  Changing file attributes
  
--* chown invocation::            Change file owner and group
--* chgrp invocation::            Change group ownership
--* chmod invocation::            Change access permissions
--* touch invocation::            Change file timestamps
-+* chown::                       Change file owner and group
-+* chgrp::                       Change group ownership
-+* chmod::                       Change access permissions
-+* touch::                       Change file timestamps
- Disk usage
--* df invocation::               Report filesystem disk space usage
--* du invocation::               Estimate file space usage
--* stat invocation::             Report file or filesystem status
--* sync invocation::             Synchronize data on disk with memory
-+* df::                          Report filesystem disk space usage
-+* du::                          Estimate file space usage
-+* stat::                        Report file or filesystem status
-+* sync::                        Synchronize data on disk with memory
+-* chown invocation::             Change file owner and group
+-* chgrp invocation::             Change group ownership
+-* chmod invocation::             Change access permissions
+-* touch invocation::             Change file timestamps
++* chown::                        Change file owner and group
++* chgrp::                        Change group ownership
++* chmod::                        Change access permissions
++* touch::                        Change file timestamps
+ File space usage
+-* df invocation::                Report file system space usage
+-* du invocation::                Estimate file space usage
+-* stat invocation::              Report file or file system status
+-* sync invocation::              Synchronize cached writes to persistent storage
+-* truncate invocation::          Shrink or extend the size of a file
++* df::                           Report file system space usage
++* du::                           Estimate file space usage
++* stat::                         Report file or file system status
++* sync::                         Synchronize cached writes to persistent storage
++* truncate::                     Shrink or extend the size of a file
  
  Printing text
  
--* echo invocation::             Print a line of text
--* printf invocation::           Format and print data
--* yes invocation::              Print a string until interrupted
-+* echo::                        Print a line of text
-+* printf::                      Format and print data
-+* yes::                         Print a string until interrupted
+-* echo invocation::              Print a line of text
+-* printf invocation::            Format and print data
+-* yes invocation::               Print a string until interrupted
++* echo::                         Print a line of text
++* printf::                       Format and print data
++* yes::                          Print a string until interrupted
  
  Conditions
  
--* false invocation::              Do nothing, unsuccessfully
--* true invocation::               Do nothing, successfully
--* test invocation::               Check file types and compare values
--* expr invocation::               Evaluate expressions
-+* false::                         Do nothing, unsuccessfully
-+* true::                          Do nothing, successfully
-+* test::                          Check file types and compare values
-+* expr::                          Evaluate expressions
+-* false invocation::             Do nothing, unsuccessfully
+-* true invocation::              Do nothing, successfully
+-* test invocation::              Check file types and compare values
+-* expr invocation::              Evaluate expressions
++* false::                        Do nothing, unsuccessfully
++* true::                         Do nothing, successfully
++* test::                         Check file types and compare values
++* expr::                         Evaluate expressions
  
  @command{test}: Check file types and compare values
  
-@@ -345,20 +333,20 @@
+@@ -386,22 +374,22 @@ Conditions
  
  Redirection
  
--* tee invocation::               Redirect output to multiple files
-+* tee::                          Redirect output to multiple files
+-* tee invocation::               Redirect output to multiple files or processes
++* tee::                          Redirect output to multiple files or processes
  
  File name manipulation
  
 -* basename invocation::          Strip directory and suffix from a file name
--* dirname invocation::           Strip non-directory suffix from a file name
--* pathchk invocation::           Check file name portability
+-* dirname invocation::           Strip last file name component
+-* pathchk invocation::           Check file name validity and portability
+-* mktemp invocation::            Create temporary file or directory
+-* realpath invocation::          Print resolved file names
 +* basename::                     Strip directory and suffix from a file name
-+* dirname::                      Strip non-directory suffix from a file name
-+* pathchk::                      Check file name portability
++* dirname::                      Strip last file name component
++* pathchk::                      Check file name validity and portability
++* mktemp::                       Create temporary file or directory
++* realpath::                     Print resolved file names
  
  Working context
  
  
  @command{stty}: Print or change terminal characteristics
  
-@@ -372,19 +360,17 @@
+@@ -415,22 +403,20 @@ Working context
  
  User information
  
--* id invocation::                Print real and effective uid and gid
+-* id invocation::                Print user identity
 -* logname invocation::           Print current login name
--* whoami invocation::            Print effective user id
+-* whoami invocation::            Print effective user ID
 -* groups invocation::            Print group names a user is in
 -* users invocation::             Print login names of users currently logged in
 -* who invocation::               Print who is currently logged in
-+* id::                           Print real and effective uid and gid
++* id::                           Print user identity
 +* logname::                      Print current login name
-+* whoami::                       Print effective user id
++* whoami::                       Print effective user ID
++* groups::                       Print group names a user is in
 +* users::                        Print login names of users currently logged in
 +* who::                          Print who is currently logged in
  
  System context
  
+-* arch invocation::              Print machine hardware name
 -* date invocation::              Print or set system date and time
+-* nproc invocation::             Print the number of processors
 -* uname invocation::             Print system information
 -* hostname invocation::          Print or set system name
--* hostid invocation::            Print numeric host identifier.
+-* hostid invocation::            Print numeric host identifier
+-* uptime invocation::            Print system uptime and load
++* arch::                         Print machine hardware name
 +* date::                         Print or set system date and time
++* nproc::                        Print the number of processors
 +* uname::                        Print system information
 +* hostid::                       Print numeric host identifier
  
  @command{date}: Print or set system date and time
  
-@@ -398,24 +384,20 @@
+@@ -445,31 +431,27 @@ System context
+ SELinux context
+-* chcon invocation::             Change SELinux context of file
+-* runcon invocation::            Run a command in specified SELinux context
++* chcon::                        Change SELinux context of file
++* runcon::                       Run a command in specified SELinux context
  
  Modified command invocation
  
 -* chroot invocation::            Run a command with a different root directory
 -* env invocation::               Run a command in a modified environment
--* nice invocation::              Run a command with modified scheduling priority
+-* nice invocation::              Run a command with modified niceness
 -* nohup invocation::             Run a command immune to hangups
--* su invocation::                Run a command with substitute user and group id
+-* stdbuf invocation::            Run a command with modified I/O buffering
+-* timeout invocation::           Run a command with a time limit
 -
 -Process control
 -
 -* kill invocation::              Sending a signal to processes.
 +* chroot::                       Run a command with a different root directory
 +* env::                          Run a command in a modified environment
-+* nice::                         Run a command with modified scheduling priority
++* nice::                         Run a command with modified niceness
 +* nohup::                        Run a command immune to hangups
-+* su::                           Run a command with substitute user and group id
++* stdbuf::                       Run a command with modified I/O buffering
++* timeout::                      Run a command with a time limit
  
  Delaying
  
  Numeric operations
  
 -* factor invocation::            Print prime factors
+-* numfmt invocation::            Reformat numbers
 -* seq invocation::               Print numeric sequences
 +* factor::                       Print prime factors
++* numfmt::                       Reformat numbers
 +* seq::                          Print numeric sequences
  
- File permissions
  
-@@ -936,13 +918,13 @@
+ File timestamps
+@@ -1623,16 +1605,16 @@ These commands read and write entire fil
  in some way.
  
  @menu
 -* tac invocation::              Concatenate and write files in reverse.
 -* nl invocation::               Number lines and write files.
 -* od invocation::               Write files in octal or other formats.
+-* base32 invocation::           Transform data into printable data.
+-* base64 invocation::           Transform data into printable data.
+-* basenc invocation::           Transform data into printable data.
 +* cat::                         Concatenate and write files.
 +* tac::                         Concatenate and write files in reverse.
 +* nl::                          Number lines and write files.
 +* od::                          Write files in octal or other formats.
++* base32::                      Transform data into printable data.
++* base64::                      Transform data into printable data.
++* basenc::                      Transform data into printable data.
  @end menu
  
 -@node cat invocation
  @section @command{cat}: Concatenate and write files
  
  @pindex cat
-@@ -1048,7 +1030,7 @@
- @end table
+@@ -1734,7 +1716,7 @@ cat
+ @end example
  
  
 -@node tac invocation
  @section @command{tac}: Concatenate and write files in reverse
  
  @pindex tac
-@@ -1095,7 +1077,7 @@
- @end table
+@@ -1792,7 +1774,7 @@ tac -r -s 'x\|[^x]'
+ @end example
  
  
 -@node nl invocation
  @section @command{nl}: Number lines and write files
  
  @pindex nl
-@@ -1254,7 +1236,7 @@
- @end table
+@@ -1960,7 +1942,7 @@ Use @var{number} characters for line num
+ @exitstatus
  
  
 -@node od invocation
  @section @command{od}: Write files in octal or other formats
  
  @pindex od
-@@ -1509,13 +1491,13 @@
+@@ -2226,7 +2208,7 @@ address.
+ @exitstatus
+-@node base32 invocation
++@node base32
+ @section @command{base32}: Transform data into printable data
+ @pindex base32
+@@ -2236,11 +2218,11 @@ address.
+ into (or from) base32 encoded form.  The base32 encoded form uses
+ printable ASCII characters to represent binary data.
+ The usage and options of this command are precisely the
+-same as for @command{base64}.  @xref{base64 invocation}.
+-For more general encoding functionality see @ref{basenc invocation}.
++same as for @command{base64}.  @xref{base64}.
++For more general encoding functionality see @ref{basenc}.
+-@node base64 invocation
++@node base64
+ @section @command{base64}: Transform data into printable data
+ @pindex base64
+@@ -2261,7 +2243,7 @@ The base32 encoding expands data to roug
+ The format conforms to
+ @uref{https://tools.ietf.org/search/rfc4648, RFC 4648}.
+-For more general encoding functionality see @ref{basenc invocation}.
++For more general encoding functionality see @ref{basenc}.
+ The program accepts the following options.  Also see @ref{Common options}.
+@@ -2302,7 +2284,7 @@ to permit distorted data to be decoded.
+ @exitstatus
+-@node basenc invocation
++@node basenc
+ @section @command{basenc}: Transform data into printable data
+ @pindex basenc
+@@ -2323,7 +2305,7 @@ The @var{encoding} argument is required.
+ @command{basenc} reads from standard input.
+ The @option{-w/--wrap},@option{-i/--ignore-garbage},
+ @option{-d/--decode} options of this command are precisely the same as
+-for @command{base64}. @xref{base64 invocation}.
++for @command{base64}. @xref{base64}.
+ Supported @var{encoding}s are:
+@@ -2438,13 +2420,13 @@ $ printf 01010100 | basenc --base2lsbf -
  These commands reformat the contents of files.
  
  @menu
  @section @command{fmt}: Reformat paragraph text
  
  @pindex fmt
-@@ -1611,7 +1593,7 @@
- @end table
+@@ -2548,7 +2530,7 @@ leaving the code unchanged.
  
+ @exitstatus
  
 -@node pr invocation
 +@node pr
  @section @command{pr}: Paginate or columnate files for printing
  
  @pindex pr
-@@ -1753,7 +1735,7 @@
+@@ -2658,7 +2640,7 @@ Double space the output.
  @cindex time formats
  @cindex formatting times
  Format header dates using @var{format}, using the same conventions as
--for the the command @samp{date +@var{format}}; @xref{date invocation}.
-+for the the command @samp{date +@var{format}}; @xref{date}.
+-for the command @samp{date +@var{format}}.  @xref{date invocation}.
++for the command @samp{date +@var{format}}.  @xref{date}.
  Except for directives, which start with
  @samp{%}, characters in @var{format} are printed unchanged.  You can use
  this option to specify an arbitrary string in place of the header date,
-@@ -1980,7 +1962,7 @@
- @end table
+@@ -2888,7 +2870,7 @@ line is never truncated.
+ @exitstatus
  
  
 -@node fold invocation
  @section @command{fold}: Wrap input lines to fit in specified width
  
  @pindex fold
-@@ -2046,13 +2028,13 @@
+@@ -2955,13 +2937,13 @@ instead.
  These commands output pieces of the input.
  
  @menu
 -* head invocation::             Output the first part of files.
 -* tail invocation::             Output the last part of files.
--* split invocation::            Split a file into fixed-size pieces.
+-* split invocation::            Split a file into pieces.
 -* csplit invocation::           Split a file into context-determined pieces.
 +* head::                        Output the first part of files.
 +* tail::                        Output the last part of files.
-+* split::                       Split a file into fixed-size pieces.
++* split::                       Split a file into pieces.
 +* csplit::                      Split a file into context-determined pieces.
  @end menu
  
  @section @command{head}: Output the first part of files
  
  @pindex head
-@@ -2117,7 +2099,7 @@
- @acronym{POSIX} 1003.1-2001 (@pxref{Standards conformance}) does not allow
- this; use @option{-c @var{count}} or @option{-n @var{count}} instead.
+@@ -3040,7 +3022,7 @@ avoid @command{head}, e.g., by using @sa
+ @exitstatus
  
 -@node tail invocation
 +@node tail
  @section @command{tail}: Output the last part of files
  
  @pindex tail
-@@ -2292,7 +2274,7 @@
- conformance}) does not allow these options; use @option{-c
- @var{count}} or @option{-n @var{count}} instead.
+@@ -3291,7 +3273,7 @@ mean either @samp{tail ./+4} or @samp{ta
+ @exitstatus
  
 -@node split invocation
 +@node split
- @section @command{split}: Split a file into fixed-size pieces
+ @section @command{split}: Split a file into pieces.
  
  @pindex split
-@@ -2365,7 +2347,7 @@
- @end table
+@@ -3548,7 +3530,7 @@ $ seq 100 > k; split -nl/7/33 k
+ @end example
  
  
 -@node csplit invocation
  @section @command{csplit}: Split a file into context-determined pieces
  
  @pindex csplit
-@@ -2503,14 +2485,14 @@
+@@ -3768,17 +3750,17 @@ These commands generate just a few numbe
  contents of files.
  
  @menu
--* wc invocation::               Print byte, word, and line counts.
+-* wc invocation::               Print newline, word, and byte counts.
 -* sum invocation::              Print checksum and block counts.
 -* cksum invocation::            Print CRC checksum and byte counts.
--* md5sum invocation::           Print or check message-digests.
-+* wc::                          Print byte, word, and line counts.
+-* b2sum invocation::            Print or check BLAKE2 digests.
+-* md5sum invocation::           Print or check MD5 digests.
+-* sha1sum invocation::          Print or check SHA-1 digests.
++* wc::                          Print newline, word, and byte counts.
 +* sum::                         Print checksum and block counts.
 +* cksum::                       Print CRC checksum and byte counts.
-+* md5sum::                      Print or check message-digests.
++* b2sum::                       Print or check BLAKE2 digests.
++* md5sum::                      Print or check MD5 digests.
++* sha1sum::                     Print or check SHA-1 digests.
+ * sha2 utilities::              Print or check SHA-2 digests.
  @end menu
  
  
 -@node wc invocation
 +@node wc
- @section @command{wc}: Print byte, word, and line counts
+ @section @command{wc}: Print newline, word, and byte counts
  
  @pindex wc
-@@ -2592,7 +2574,7 @@
- @end table
+@@ -3929,7 +3911,7 @@ find . -name '*.[ch]' -print0 |
+ @exitstatus
  
  
 -@node sum invocation
  @section @command{sum}: Print checksum and block counts
  
  @pindex sum
-@@ -2641,7 +2623,7 @@
- next section) is preferable in new applications.
+@@ -3978,7 +3960,7 @@ next section) is preferable in new appli
+ @exitstatus
  
  
 -@node cksum invocation
 +@node cksum
- @section @command{cksum}: Print CRC checksum and byte counts
+ @section @command{cksum}: Print and verify file checksums
  
  @pindex cksum
-@@ -2673,7 +2655,7 @@
- options}.
+@@ -4010,7 +3992,7 @@ for each file along with the number of b
+ and the file name unless no arguments were given.
+ The same usage and options as the @command{b2sum}
+-command are supported.  @xref{b2sum invocation}.
++command are supported.  @xref{b2sum}.
+ In addition @command{cksum} supports the following options.
+ @table @samp
+@@ -4080,11 +4062,11 @@ This format has the checksum at the star
+ more amenable to further processing by other utilities,
+ especially in combination with the @option{--zero} option.
+ Note this does not identify the digest algorithm used for the checksum.
+-@xref{md5sum invocation} for details of this format.
++@xref{md5sum} for details of this format.
+ @end table
  
  
+-@node b2sum invocation
++@node b2sum
+ @section @command{b2sum}: Print or check BLAKE2 digests
+ @pindex b2sum
+@@ -4096,7 +4078,7 @@ Note this does not identify the digest a
+ @command{b2sum} computes a 512-bit checksum for each specified
+ @var{file}.  The same usage and options as the @command{md5sum}
+-command are supported.  @xref{md5sum invocation}.
++command are supported.  @xref{md5sum}.
+ In addition @command{b2sum} supports the following options.
+ @table @samp
+@@ -4111,7 +4093,7 @@ This option is ignored when @option{--ch
+ as the length is automatically determined when checking.
+ @end table
 -@node md5sum invocation
 +@node md5sum
- @section @command{md5sum}: Print or check message-digests
+ @section @command{md5sum}: Print or check MD5 digests
  
  @pindex md5sum
-@@ -2778,16 +2760,16 @@
+@@ -4134,7 +4116,7 @@ fingerprint is considered infeasible at
+ to modify certain files, including digital certificates, so that they
+ appear valid when signed with an \hash\ digest.  For more secure hashes,
+ consider using SHA-2, or the newer @command{b2sum} command.
+-@xref{sha2 utilities}. @xref{b2sum invocation}.
++@xref{sha2 utilities}. @xref{b2sum}.
+ @end macro
+ @weakHash{MD5}
+@@ -4297,7 +4279,7 @@ Also file name escaping is not used.
+ @exitstatus
+-@node sha1sum invocation
++@node sha1sum
+ @section @command{sha1sum}: Print or check SHA-1 digests
+ @pindex sha1sum
+@@ -4309,7 +4291,7 @@ Also file name escaping is not used.
+ @command{sha1sum} computes a 160-bit checksum for each specified
+ @var{file}.  The usage and options of this command are precisely the
+-same as for @command{md5sum}.  @xref{md5sum invocation}.
++same as for @command{md5sum}.  @xref{md5sum}.
+ @weakHash{SHA-1}
+@@ -4345,7 +4327,7 @@ various lengths (respectively 224, 256,
+ collectively known as the SHA-2 hashes.  The usage and options of
+ these commands are precisely the same as for @command{md5sum}
+ and @command{sha1sum}.
+-@xref{md5sum invocation}.
++@xref{md5sum}.
+ @node Operating on sorted files
+@@ -4357,16 +4339,16 @@ and @command{sha1sum}.
  These commands work with (or produce) sorted files.
  
  @menu
 -* sort invocation::             Sort text files.
+-* shuf invocation::             Shuffle text files.
 -* uniq invocation::             Uniquify files.
 -* comm invocation::             Compare two sorted files line by line.
 -* ptx invocation::              Produce a permuted index of file contents.
 -* tsort invocation::            Topological sort.
 +* sort::                        Sort text files.
++* shuf::                        Shuffle text files.
 +* uniq::                        Uniquify files.
 +* comm::                        Compare two sorted files line by line.
 +* ptx::                         Produce a permuted index of file contents.
 +* tsort::                       Topological sort.
- * tsort background::            Where tsort came from.
  @end menu
  
  
  @section @command{sort}: Sort text files
  
  @pindex sort
-@@ -3240,7 +3222,7 @@
+@@ -4662,7 +4644,7 @@ appear earlier in the output instead of
+ Sort by hashing the input keys and then sorting the hash values.
+ Choose the hash function at random, ensuring that it is free of
+ collisions so that differing keys have differing hash values.  This is
+-like a random permutation of the inputs (@pxref{shuf invocation}),
++like a random permutation of the inputs (@pxref{shuf}),
+ except that keys with the same value sort together.
+ If multiple random sort fields are specified, the same random hash
+@@ -4861,7 +4843,7 @@ Set the number of sorts run in parallel
+ @var{n} is set to the number of available processors, but limited
+ to 8, as there are diminishing performance gains after that.
+ Note also that using @var{n} threads increases the memory usage by
+-a factor of log @var{n}.  Also see @ref{nproc invocation}.
++a factor of log @var{n}.  Also see @ref{nproc}.
+ @item -u
+ @itemx --unique
+@@ -4879,7 +4861,7 @@ The commands @code{sort -u} and @code{so
+ this equivalence does not extend to arbitrary @command{sort} options.
+ For example, @code{sort -n -u} inspects only the value of the initial
+ numeric string when checking for uniqueness, whereas @code{sort -n |
+-uniq} inspects the entire line.  @xref{uniq invocation}.
++uniq} inspects the entire line.  @xref{uniq}.
+ @optZeroTerminated
+ @macro newlineFieldSeparator
+@@ -5095,7 +5077,7 @@ ls */* | sort -t / -k 1,1R -k 2,2
  @end itemize
  
  
+-@node shuf invocation
++@node shuf
+ @section @command{shuf}: Shuffling text
+ @pindex shuf
+@@ -5251,7 +5233,7 @@ shuf -r -n 100 -e Head Tail
+ @exitstatus
 -@node uniq invocation
 +@node uniq
  @section @command{uniq}: Uniquify files
  
  @pindex uniq
-@@ -3369,7 +3351,7 @@
- @end table
+@@ -5273,7 +5255,7 @@ lines that are not repeated, or all repe
+ The input need not be sorted, but repeated input lines are detected
+ only if they are adjacent.  If you want to discard non-adjacent
+ duplicate lines, perhaps you want to use @code{sort -u}.
+-@xref{sort invocation}.
++@xref{sort}.
+ @vindex LC_COLLATE
+ Comparisons honor the rules specified by the @env{LC_COLLATE}
+@@ -5439,7 +5421,7 @@ compared.
+ @exitstatus
  
  
 -@node comm invocation
  @section @command{comm}: Compare two sorted files line by line
  
  @pindex comm
-@@ -3412,7 +3394,7 @@
- If there is an error it exits with nonzero status.
+@@ -5555,7 +5537,7 @@ $ comm -12 file1 file2 | wc -l    # numb
  
--@node tsort invocation
-+@node tsort
- @section @command{tsort}: Topological sort
- @pindex tsort
-@@ -3563,7 +3545,7 @@
- the way the linker handled archive files, which has since been solved
- in different ways.
+ @end table
  
 -@node ptx invocation
 +@node ptx
  @section @command{ptx}: Produce permuted indexes
  
  @pindex ptx
-@@ -4030,13 +4012,13 @@
- @chapter Operating on fields within a line
+@@ -6045,7 +6027,7 @@ allowed with System V @command{ptx}.
+ @end itemize
+-@node tsort invocation
++@node tsort
+ @section @command{tsort}: Topological sort
+ @pindex tsort
+@@ -6207,13 +6189,13 @@ in different ways.
+ @chapter Operating on fields
  
  @menu
 -* cut invocation::              Print selected parts of lines.
  @section @command{cut}: Print selected parts of lines
  
  @pindex cut
-@@ -4124,7 +4106,7 @@
- @end table
+@@ -6338,7 +6320,7 @@ many fields and want to print all but a
+ @exitstatus
  
  
 -@node paste invocation
  @section @command{paste}: Merge lines of files
  
  @pindex paste
-@@ -4192,7 +4174,7 @@
- @end table
+@@ -6436,7 +6418,7 @@ $ paste -d '%_' num2 let3 num2
+ @exitstatus
  
  
 -@node join invocation
  @section @command{join}: Join lines on a common field
  
  @pindex join
-@@ -4325,13 +4307,13 @@
- This commands operate on individual characters.
+@@ -6968,13 +6950,13 @@ entire lines as the key.
+ These commands operate on individual characters.
  
  @menu
 -* tr invocation::               Translate, squeeze, and/or delete characters.
  @section @command{tr}: Translate, squeeze, and/or delete characters
  
  @pindex tr
-@@ -4715,7 +4697,7 @@
- Unix versions, which provide no way to preserve zero bytes.
+@@ -7397,7 +7379,7 @@ tr -d -- -axM
+ @end itemize
  
  
 -@node expand invocation
  @section @command{expand}: Convert tabs to spaces
  
  @pindex expand
-@@ -4768,7 +4750,7 @@
- @end table
+@@ -7466,7 +7448,7 @@ characters) on each line to spaces.
+ @exitstatus
  
  
 -@node unexpand invocation
  @section @command{unexpand}: Convert spaces to tabs
  
  @pindex unexpand
-@@ -4827,14 +4809,14 @@
+@@ -7529,14 +7511,14 @@ This chapter describes the @command{ls}
  and @command{vdir}, which list information about files.
  
  @menu
  @section @command{ls}: List directory contents
  
  @pindex ls
-@@ -5529,7 +5511,7 @@
+@@ -8452,7 +8434,7 @@ be one of the following:
  @item +@var{format}
  @vindex LC_TIME
  List timestamps using @var{format}, where @var{format} is interpreted
 -like the format argument of @command{date} (@pxref{date invocation}).
 +like the format argument of @command{date} (@pxref{date}).
  For example, @option{--time-style="+%Y-%m-%d %H:%M:%S"} causes
- @command{ls} to list timestamps like @samp{2002-03-30 23:45:56}.  As
+ @command{ls} to list timestamps like @samp{2020-03-30 23:45:56}.  As
  with @command{date}, @var{format}'s interpretation is affected by the
-@@ -5704,7 +5686,7 @@
+@@ -8653,7 +8635,7 @@ This is the default unless the output is
  @end table
  
  
  @section @command{dir}: Briefly list directory contents
  
  @pindex dir
-@@ -5714,10 +5696,10 @@
+@@ -8663,10 +8645,10 @@ This is the default unless the output is
  -b}; that is, by default files are listed in columns, sorted vertically,
  and special characters are represented by backslash escape sequences.
  
  @section @command{vdir}: Verbosely list directory contents
  
  @pindex vdir
-@@ -5727,7 +5709,7 @@
+@@ -8676,9 +8658,9 @@ and special characters are represented b
  -b}; that is, by default files are listed in long format and special
  characters are represented by backslash escape sequences.
  
+-@xref{ls invocation, @command{ls}}.
++@xref{ls, @command{ls}}.
 -@node dircolors invocation
 +@node dircolors
  @section @command{dircolors}: Color setup for @command{ls}
  
  @pindex dircolors
-@@ -5803,16 +5785,16 @@
+@@ -8771,16 +8753,16 @@ This chapter describes the commands for
  copying, moving (renaming), and deleting (removing).
  
  @menu
  @section @command{cp}: Copy files and directories
  
  @pindex cp
-@@ -6152,7 +6134,7 @@
- @end table
+@@ -9293,7 +9275,7 @@ option, and overrides the @option{--pres
+ @exitstatus
  
  
 -@node dd invocation
  @section @command{dd}: Convert and copy a file
  
  @pindex dd
-@@ -6305,7 +6287,7 @@
- @end table
+@@ -9603,7 +9585,7 @@ If neither this nor @samp{fsync} are spe
+ usual with file systems, i.e., output data and metadata may be cached
+ in primary memory for some time before the operating system physically
+ writes it, and thus output data and metadata may be lost if power is lost.
+-@xref{sync invocation}.
++@xref{sync}.
+ This conversion is a GNU extension to POSIX.
+ @item fsync
+@@ -9882,7 +9864,7 @@ environment variable is set.
+ @exitstatus
  
  
 -@node install invocation
  @section @command{install}: Copy files and set attributes
  
  @pindex install
-@@ -6446,7 +6428,7 @@
- @end table
+@@ -10066,7 +10048,7 @@ This option is mutually exclusive with t
+ @exitstatus
  
  
 -@node mv invocation
  @section @command{mv}: Move (rename) files
  
  @pindex mv
-@@ -6574,7 +6556,7 @@
- @end table
+@@ -10217,7 +10199,7 @@ to the system default type for destinati
+ @exitstatus
  
  
 -@node rm invocation
  @section @command{rm}: Remove files or directories
  
  @pindex rm
-@@ -6673,7 +6655,7 @@
- predates the development of the getopt standard syntax.
+@@ -10383,7 +10365,7 @@ predates the development of the @code{ge
+ @exitstatus
  
  
 -@node shred invocation
  @section @command{shred}: Remove files more securely
  
  @pindex shred
-@@ -6683,7 +6665,7 @@
+@@ -10393,7 +10375,7 @@ predates the development of the @code{ge
  @command{shred} overwrites devices or files, to help prevent even
very expensive hardware from recovering the data.
--Ordinarily when you remove a file (@pxref{rm invocation}), the data is
-+Ordinarily when you remove a file (@pxref{rm}), the data is
- not actually destroyed.  Only the index listing where the file is
- stored is destroyed, and the storage is made available for reuse.
- There are undelete utilities that will attempt to reconstruct the index
-@@ -6903,18 +6885,18 @@
extensive forensics from recovering the data.
+-Ordinarily when you remove a file (@pxref{rm invocation}), its data
++Ordinarily when you remove a file (@pxref{rm}), its data
+ and metadata are not actually destroyed.  Only the file's directory
+ entry is removed, and the file's storage is reclaimed only when no
+ process has the file open and no other directory entry links to the
+@@ -10680,18 +10662,18 @@ Besides directories, other special file
  (FIFOs), symbolic links, sockets, and so-called @dfn{special files}.
  
  @menu
 -* mkdir invocation::            Make directories.
 -* mkfifo invocation::           Make FIFOs (named pipes).
 -* mknod invocation::            Make block or character special files.
--* readlink invocation::         Print the referent of a symbolic link.
+-* readlink invocation::         Print value of a symlink or canonical file name.
 -* rmdir invocation::            Remove empty directories.
 -* unlink invocation::           Remove files via the unlink syscall
-+* link::                        Make a hard link via the link syscall
-+* ln::                          Make links between files.
-+* mkdir::                       Make directories.
-+* mkfifo::                      Make FIFOs (named pipes).
-+* mknod::                       Make block or character special files.
-+* readlink::                    Print the referent of a symbolic link.
-+* rmdir::                       Remove empty directories.
-+* unlink::                      Remove files via the unlink syscall.
++* link::             Make a hard link via the link syscall
++* ln::               Make links between files.
++* mkdir::            Make directories.
++* mkfifo::           Make FIFOs (named pipes).
++* mknod::            Make block or character special files.
++* readlink::         Print value of a symlink or canonical file name.
++* rmdir::            Remove empty directories.
++* unlink::           Remove files via the unlink syscall
  @end menu
  
  
  @section @command{link}: Make a hard link via the link syscall
  
  @pindex link
-@@ -6937,7 +6919,7 @@
- @command{link} simply calls @code{link (@var{filename}, @var{linkname})}
- to create the link.
+@@ -10704,7 +10686,7 @@ It is a minimalist interface to the syst
+ @code{link} function.  @xref{Hard Links, , , libc,
+ The GNU C Library Reference Manual}.
+ It avoids the bells and whistles of the more commonly-used
+-@command{ln} command (@pxref{ln invocation}).
++@command{ln} command (@pxref{ln}).
+ Synopsis:
+ @example
+@@ -10730,7 +10712,7 @@ to specify which behavior is desired.
+ @exitstatus
  
 -@node ln invocation
 +@node ln
  @section @command{ln}: Make links between files
  
  @pindex ln
-@@ -7098,7 +7080,7 @@
- @end smallexample
+@@ -10918,7 +10900,7 @@ ln -srv /a/file /tmp
+ Relative symbolic links are generated based on their canonicalized
+ containing directory, and canonicalized targets.  I.e., all symbolic
+ links in these file names will be resolved.
+-@xref{realpath invocation}, which gives greater control
++@xref{realpath}, which gives greater control
+ over relative file name generation, as demonstrated in the following example:
+ @example
+@@ -10995,7 +10977,7 @@ ln -s ../adir/afile yetanotherfile
+ @end example
  
  
 -@node mkdir invocation
  @section @command{mkdir}: Make directories
  
  @pindex mkdir
-@@ -7152,7 +7134,7 @@
- @end table
+@@ -11073,7 +11055,7 @@ Print a message for each created directo
+ @exitstatus
  
  
 -@node mkfifo invocation
  @section @command{mkfifo}: Make FIFOs (named pipes)
  
  @pindex mkfifo
-@@ -7188,7 +7170,7 @@
- @end table
+@@ -11114,7 +11096,7 @@ permission bits.  @xref{File permissions
+ @exitstatus
  
  
 -@node mknod invocation
  @section @command{mknod}: Make block or character special files
  
  @pindex mknod
-@@ -7257,7 +7239,7 @@
- @end table
+@@ -11191,7 +11173,7 @@ Set the mode of created files to @var{mo
+ @exitstatus
  
  
 -@node readlink invocation
 +@node readlink
- @section @command{readlink}: Print the referent of a symbolic link
+ @section @command{readlink}: Print value of a symlink or canonical file name
  
  @pindex readlink
-@@ -7325,7 +7307,7 @@
- The @command{readlink} utility first appeared in OpenBSD 2.1.
+@@ -11215,7 +11197,7 @@ of a symbolic link, it produces no outpu
+ @command{readlink} outputs the absolute name of the given files which contain
+ no @file{.}, @file{..} components nor any repeated separators
+ (@file{/}) or symbolic links.  Note the @command{realpath} command is the
+-preferred command to use for canonicalization.  @xref{realpath invocation}.
++preferred command to use for canonicalization.  @xref{realpath}.
+ @end table
+@@ -11290,7 +11272,7 @@ The @command{realpath} command without o
+ @exitstatus
  
  
 -@node rmdir invocation
  @section @command{rmdir}: Remove empty directories
  
  @pindex rmdir
-@@ -7373,9 +7355,9 @@
+@@ -11337,7 +11319,7 @@ Give a diagnostic for each successful re
  
  @end table
  
--@xref{rm invocation}, for how to remove non-empty directories (recursively).
-+@xref{rm}, for how to remove non-empty directories (recursively).
+-@xref{rm invocation}, for how to remove non-empty directories recursively.
++@xref{rm}, for how to remove non-empty directories recursively.
+ To remove all empty directories under @var{dirname}, including
+ directories that become empty because other directories are removed,
+@@ -11354,7 +11336,7 @@ find @var{dirname} -depth -type d -exec
+ @exitstatus
  
 -@node unlink invocation
 +@node unlink
  @section @command{unlink}: Remove files via the unlink syscall
  
  @pindex unlink
-@@ -7418,14 +7400,14 @@
+@@ -11365,7 +11347,7 @@ It is a minimalist interface to the syst
+ @code{unlink} function.  @xref{Deleting Files, , , libc,
+ The GNU C Library Reference Manual}.  Synopsis:
+ It avoids the bells and whistles of the more commonly-used
+-@command{rm} command (@pxref{rm invocation}).
++@command{rm} command (@pxref{rm}).
+ @example
+ unlink @var{filename}
+@@ -11399,14 +11381,14 @@ timestamps, and other information.  Coll
  These commands change file attributes.
  
  @menu
+-* chown invocation::            Change file owners and groups.
 -* chgrp invocation::            Change file groups.
 -* chmod invocation::            Change access permissions.
--* chown invocation::            Change file owners and groups.
 -* touch invocation::            Change file timestamps.
++* chown::                       Change file owners and groups.
 +* chgrp::                       Change file groups.
 +* chmod::                       Change access permissions.
-+* chown::                       Change file owners and groups.
 +* touch::                       Change file timestamps.
  @end menu
  
  @section @command{chown}: Change file owner and group
  
  @pindex chown
-@@ -7582,7 +7564,7 @@
- @end table
+@@ -11634,7 +11616,7 @@ chown -hR root /u
+ @end example
  
  
 -@node chgrp invocation
  @section @command{chgrp}: Change group ownership
  
  @pindex chgrp
-@@ -7666,7 +7648,7 @@
- @end table
+@@ -11643,7 +11625,7 @@ chown -hR root /u
+ @command{chgrp} changes the group ownership of each given @var{file}
+ to @var{group} (which can be either a group name or a numeric group ID)
+-or to the group of an existing reference file.  @xref{chown invocation}.
++or to the group of an existing reference file.  @xref{chown}.
+ Synopsis:
+ @example
+@@ -11762,7 +11744,7 @@ chgrp -hR staff /u
+ @end example
  
  
 -@node chmod invocation
  @section @command{chmod}: Change access permissions
  
  @pindex chmod
-@@ -7736,7 +7718,7 @@
- @end table
+@@ -11884,7 +11866,7 @@ chmod -R a=,+rwX dir
+ @end smallexample
  
  
 -@node touch invocation
  @section @command{touch}: Change file timestamps
  
  @pindex touch
-@@ -7856,14 +7838,14 @@
- or some such command.)
+@@ -12059,15 +12041,15 @@ how much storage is in use or available,
+ file status information, and write buffers to file systems.
  
  @menu
--* df invocation::               Report filesystem disk space usage.
+-* df invocation::               Report file system space usage.
 -* du invocation::               Estimate file space usage.
--* stat invocation::           Report file or filesystem status.
--* sync invocation::             Synchronize memory and disk.
-+* df::                          Report filesystem disk space usage.
+-* stat invocation::             Report file or file system status.
+-* sync invocation::             Synchronize cached writes to persistent storage.
+-* truncate invocation::         Shrink or extend the size of a file.
++* df::                          Report file system space usage.
 +* du::                          Estimate file space usage.
-+* stat::                        Report file or filesystem status.
-+* sync::                        Synchronize memory and disk.
++* stat::                        Report file or file system status.
++* sync::                        Synchronize cached writes to persistent storage.
++* truncate::                    Shrink or extend the size of a file.
  @end menu
  
  
 -@node df invocation
 +@node df
- @section @command{df}: Report filesystem disk space usage
+ @section @command{df}: Report file system space usage
  
  @pindex df
-@@ -8068,7 +8050,7 @@
- @end table
+@@ -12375,7 +12357,7 @@ be read and one or more of the options @
+ or @option{-x} is used together with a file name argument.
  
  
 -@node du invocation
  @section @command{du}: Estimate file space usage
  
  @pindex du
-@@ -8242,7 +8224,7 @@
- in HP-UX; it also affects the HP-UX @command{du} program.
+@@ -12634,7 +12616,7 @@ be one of the following:
+ @item +@var{format}
+ @vindex LC_TIME
+ List timestamps using @var{format}, where @var{format} is interpreted
+-like the format argument of @command{date} (@pxref{date invocation}).
++like the format argument of @command{date} (@pxref{date}).
+ For example, @option{--time-style="+%Y-%m-%d %H:%M:%S"} causes
+ @command{du} to list timestamps like @samp{2020-07-21 23:45:56}.  As
+ with @command{date}, @var{format}'s interpretation is affected by the
+@@ -12730,7 +12712,7 @@ underlying devices.
+ @exitstatus
  
  
 -@node stat invocation
 +@node stat
- @section @command{stat}: Report file or filesystem status
+ @section @command{stat}: Report file or file system status
  
  @pindex stat
-@@ -8341,7 +8323,7 @@
- @end table
+@@ -12972,7 +12954,7 @@ with @env{TZ}, libc, The GNU C Library R
+ @exitstatus
  
  
 -@node sync invocation
 +@node sync
- @section @command{sync}: Synchronize data on disk with memory
+ @section @command{sync}: Synchronize cached writes to persistent storage
  
  @pindex sync
-@@ -8373,13 +8355,13 @@
+@@ -13032,7 +13014,7 @@ write barriers, than a global sync(2) us
+ @exitstatus
+-@node truncate invocation
++@node truncate
+ @section @command{truncate}: Shrink or extend the size of a file
+ @pindex truncate
+@@ -13109,13 +13091,13 @@ the size of each @var{file} based on its
  This section describes commands that display text strings.
  
  @menu
  @section @command{echo}: Print a line of text
  
  @pindex echo
-@@ -8435,7 +8417,7 @@
- @end table
+@@ -13138,7 +13120,7 @@ strings cannot be passed to @command{ech
+ It is therefore not advisable to use @command{echo} for printing unknown or
+ variable arguments.  The @command{printf} command is recommended as a more
+ portable and flexible replacement for tasks historically performed by
+-@command{echo}.  @xref{printf invocation}.
++@command{echo}.  @xref{printf}.
+ The program accepts the following options.  Also see @ref{Common options}.
+ Options must precede operands, and the normally-special argument
+@@ -13213,12 +13195,12 @@ POSIX does not require support for any o
+ that the behavior of @command{echo} is implementation-defined if any
+ @var{string} contains a backslash or if the first argument is @option{-n}.
+ Portable programs should use the @command{printf} command instead.
+-@xref{printf invocation}.
++@xref{printf}.
+ @exitstatus
  
  
 -@node printf invocation
  @section @command{printf}: Format and print data
  
  @pindex printf
-@@ -8521,7 +8503,7 @@
- @end smallexample
+@@ -13380,7 +13362,7 @@ Options must precede operands.
+ @exitstatus
  
  
 -@node yes invocation
  @section @command{yes}: Print a string until interrupted
  
  @pindex yes
-@@ -8548,14 +8530,14 @@
+@@ -13411,14 +13393,14 @@ condition of shell @code{if} statements,
  pipeline.
  
  @menu
  @section @command{false}: Do nothing, unsuccessfully
  
  @pindex false
-@@ -8577,7 +8559,7 @@
be used as a dummy shell for the purpose of disabling accounts.
+@@ -13448,7 +13430,7 @@ Portable programs should not assume that
non-GNU hosts.
  
  
 -@node true invocation
  @section @command{true}: Do nothing, successfully
  
  @pindex true
-@@ -8603,7 +8585,7 @@
+@@ -13484,7 +13466,7 @@ This version of @command{true} is implem
  more secure and faster than a shell script implementation, and may safely
  be used as a dummy shell for the purpose of disabling accounts.
  
  @section @command{test}: Check file types and compare values
  
  @pindex test
-@@ -8893,7 +8875,7 @@
+@@ -13855,7 +13837,7 @@ True if either @var{expr1} or @var{expr2
  @end table
  
  
  @section @command{expr}: Evaluate expressions
  
  @pindex expr
-@@ -9138,11 +9120,11 @@
+@@ -14132,11 +14114,11 @@ useful redirection is performed by a sep
  it's described here.
  
  @menu
--* tee invocation::              Redirect output to multiple files.
-+* tee::                         Redirect output to multiple files.
+-* tee invocation::              Redirect output to multiple files or processes.
++* tee::                         Redirect output to multiple files or processes.
  @end menu
  
  
 -@node tee invocation
 +@node tee
- @section @command{tee}: Redirect output to multiple files
+ @section @command{tee}: Redirect output to multiple files or processes
  
  @pindex tee
-@@ -9191,13 +9173,13 @@
+@@ -14352,15 +14334,15 @@ tar chof - "$tardir" \
  This section describes commands that manipulate file names.
  
  @menu
 -* basename invocation::         Strip directory and suffix from a file name.
--* dirname invocation::          Strip non-directory suffix from a file name.
--* pathchk invocation::          Check file name portability.
+-* dirname invocation::          Strip last file name component.
+-* pathchk invocation::          Check file name validity and portability.
+-* mktemp invocation::           Create temporary file or directory.
+-* realpath invocation::         Print resolved file names.
 +* basename::                    Strip directory and suffix from a file name.
-+* dirname::                     Strip non-directory suffix from a file name.
-+* pathchk::                     Check file name portability.
++* dirname::                     Strip last file name component.
++* pathchk::                     Check file name validity and portability.
++* mktemp::                      Create temporary file or directory.
++* realpath::                    Print resolved file names.
  @end menu
  
  
  @section @command{basename}: Strip directory and suffix from a file name
  
  @pindex basename
-@@ -9222,7 +9204,7 @@
- options}.
+@@ -14442,7 +14424,7 @@ basename -a -s .h include/stdio.h includ
+ @end example
  
  
 -@node dirname invocation
 +@node dirname
- @section @command{dirname}: Strip non-directory suffix from a file name
+ @section @command{dirname}: Strip last file name component
  
  @pindex dirname
-@@ -9244,7 +9226,7 @@
- options}.
+@@ -14495,7 +14477,7 @@ dirname stdio.h
+ @end example
  
  
 -@node pathchk invocation
 +@node pathchk
- @section @command{pathchk}: Check file name portability
+ @section @command{pathchk}: Check file name validity and portability
  
  @pindex pathchk
-@@ -9308,14 +9290,14 @@
+@@ -14571,7 +14553,7 @@ Exit status:
+ 1 otherwise.
+ @end display
+-@node mktemp invocation
++@node mktemp
+ @section @command{mktemp}: Create temporary file or directory
+ @pindex mktemp
+@@ -14746,7 +14728,7 @@ Exit status:
+ @end display
+-@node realpath invocation
++@node realpath
+ @section @command{realpath}: Print the resolved file name.
+ @pindex realpath
+@@ -14938,14 +14920,14 @@ which you are working: the current direc
  so forth.  See also the user-related commands in the next section.
  
  @menu
  @section @command{pwd}: Print working directory
  
  @pindex pwd
-@@ -9338,7 +9320,7 @@
- @option{--version}.  @xref{Common options}.
+@@ -14992,7 +14974,7 @@ environment variable is set.
+ @exitstatus
  
  
 -@node stty invocation
  @section @command{stty}: Print or change terminal characteristics
  
  @pindex stty
-@@ -9984,7 +9966,7 @@
+@@ -15736,7 +15718,7 @@ or
  @end table
  
  
  @section @command{printenv}: Print all or some environment variables
  
  @pindex printenv
-@@ -10014,7 +9996,7 @@
+@@ -15771,7 +15753,7 @@ Exit status:
  @end display
  
  
  @section @command{tty}: Print file name of terminal on standard input
  
  @pindex tty
-@@ -10064,16 +10046,15 @@
+@@ -15821,16 +15803,16 @@ This section describes commands that pri
  logins, groups, and so forth.
  
  @menu
--* id invocation::               Print real and effective uid and gid.
+-* id invocation::               Print user identity.
 -* logname invocation::          Print current login name.
--* whoami invocation::           Print effective user id.
+-* whoami invocation::           Print effective user ID.
 -* groups invocation::           Print group names a user is in.
 -* users invocation::            Print login names of users currently logged in.
 -* who invocation::              Print who is currently logged in.
-+* id::                          Print real and effective uid and gid.
++* id::                          Print user identity.
 +* logname::                     Print current login name.
-+* whoami::                      Print effective user id.
++* whoami::                      Print effective user ID.
++* groups::                      Print group names a user is in.
 +* users::                       Print login names of users currently logged in.
 +* who::                         Print who is currently logged in.
  @end menu
  
 -@node id invocation
 +@node id
- @section @command{id}: Print real and effective uid and gid
+ @section @command{id}: Print user identity
  
  @pindex id
-@@ -10134,7 +10115,7 @@
- @end table
+@@ -15937,7 +15919,7 @@ database to be consulted afresh, and so
  
+ @exitstatus
  
 -@node logname invocation
 +@node logname
  @section @command{logname}: Print current login name
  
  @pindex logname
-@@ -10154,7 +10135,7 @@
- options}.
+@@ -15958,7 +15940,7 @@ options}.
+ @exitstatus
  
  
 -@node whoami invocation
 +@node whoami
- @section @command{whoami}: Print effective user id
+ @section @command{whoami}: Print effective user name
  
  @pindex whoami
-@@ -10168,29 +10149,7 @@
- options}.
+@@ -15974,7 +15956,7 @@ options}.
+ @exitstatus
  
  
 -@node groups invocation
--@section @command{groups}: Print group names a user is in
--
--@pindex groups
--@cindex printing groups a user is in
--@cindex supplementary groups, printing
--
--@command{groups} prints the names of the primary and any supplementary
--groups for each given @var{username}, or the current process if no names
--are given.  If names are given, the name of each user is printed before
--the list of that user's groups.  Synopsis:
--
--@example
--groups [@var{username}]@dots{}
--@end example
--
--The group lists are equivalent to the output of the command @samp{id -Gn}.
--
--The only options are @option{--help} and @option{--version}.  @xref{Common
--options}.
--
--
++@node groups
+ @section @command{groups}: Print group names a user is in
+ @pindex groups
+@@ -16001,7 +15983,7 @@ options}.
+ @exitstatus
 -@node users invocation
 +@node users
  @section @command{users}: Print login names of users currently logged in
  
  @pindex users
-@@ -10218,7 +10177,7 @@
- options}.
+@@ -16036,7 +16018,7 @@ should not rely on its existence on non-
+ @exitstatus
  
  
 -@node who invocation
  @section @command{who}: Print who is currently logged in
  
  @pindex who
-@@ -10330,14 +10289,13 @@
+@@ -16199,16 +16181,14 @@ This section describes commands that pri
  information.
  
  @menu
 -* date invocation::             Print or set system date and time.
+-* arch invocation::             Print machine hardware name.
+-* nproc invocation::            Print the number of processors.
 -* uname invocation::            Print system information.
 -* hostname invocation::         Print or set system name.
 -* hostid invocation::           Print numeric host identifier.
-+* date::                        Print or set system date and time.
-+* uname::                       Print system information.
-+* hostid::                      Print numeric host identifier.
+-* uptime invocation::           Print system uptime and load.
++* date::             Print or set system date and time.
++* arch::             Print machine hardware name.
++* nproc::            Print the number of processors.
++* uname::            Print system information.
++* hostid::           Print numeric host identifier.
  @end menu
  
 -@node date invocation
 +@node date
  @section @command{date}: Print or set system date and time
  
  @pindex date
-@@ -10819,7 +10777,7 @@
+@@ -16965,7 +16945,7 @@ date --date='2017-01-01 00:00:00 +0000'
  @end itemize
  
  
+-@node arch invocation
++@node arch
+ @section @command{arch}: Print machine hardware name
+ @pindex arch
+@@ -16988,7 +16968,7 @@ not rely on its existence.
+ @exitstatus
+-@node nproc invocation
++@node nproc
+ @section @command{nproc}: Print the number of available processors
+ @pindex nproc
+@@ -17027,7 +17007,7 @@ If possible, exclude this @var{number} o
+ @exitstatus
 -@node uname invocation
 +@node uname
  @section @command{uname}: Print system information
  
  @pindex uname
-@@ -10930,29 +10888,7 @@
+@@ -17157,35 +17137,7 @@ Print the kernel version.
+ @exitstatus
  
- @end table
  
 -@node hostname invocation
 -@section @command{hostname}: Print or set system name
 -With no arguments, @command{hostname} prints the name of the current host
 -system.  With one argument, it sets the current host name to the
 -specified string.  You must have appropriate privileges to set the host
--name. Synopsis:
+-name.  Synopsis:
 -
 -@example
 -hostname [@var{name}]
 -The only options are @option{--help} and @option{--version}.  @xref{Common
 -options}.
 -
+-@command{hostname} is not installed by default, and other packages
+-also supply a @command{hostname} command, so portable scripts should
+-not rely on its existence or on the exact behavior documented above.
+-
+-@exitstatus
+-
 -
 -@node hostid invocation
 +@node hostid
- @section @command{hostid}: Print numeric host identifier.
+ @section @command{hostid}: Print numeric host identifier
  
  @pindex hostid
-@@ -10987,15 +10923,15 @@
+@@ -17213,44 +17165,6 @@ existence.
+ @exitstatus
+-@node uptime invocation
+-@section @command{uptime}: Print system uptime and load
+-
+-@pindex uptime
+-@cindex printing the system uptime and load
+-
+-@command{uptime} prints the current time, the system's uptime, the
+-number of logged-in users and the current load average.
+-
+-If an argument is specified, it is used as the file to be read
+-to discover how many users are logged in.  If no argument is
+-specified, a system default is used (@command{uptime --help} indicates
+-the default setting).
+-
+-The only options are @option{--help} and @option{--version}.
+-@xref{Common options}.
+-
+-For example, here's what it prints right now on one system I use:
+-
+-@example
+-$ uptime
+- 14:07  up   3:35,  3 users,  load average: 1.39, 1.15, 1.04
+-@end example
+-
+-The precise method of calculation of load average varies somewhat
+-between systems.  Some systems calculate it as the average number of
+-runnable processes over the last 1, 5 and 15 minutes, but some systems
+-also include processes in the uninterruptible sleep state (that is,
+-those processes which are waiting for device I/O).  The Linux kernel
+-includes uninterruptible processes.
+-
+-@command{uptime} is installed only on platforms with infrastructure
+-for obtaining the boot time, and other packages also supply an
+-@command{uptime} command, so portable scripts should not rely on its
+-existence or on the exact behavior documented above.
+-
+-@exitstatus
+-
+ @node SELinux context
+ @chapter SELinux context
+@@ -17262,11 +17176,11 @@ This section describes commands for oper
+ contexts.
+ @menu
+-* chcon invocation::            Change SELinux context of file
+-* runcon invocation::           Run a command in specified SELinux context
++* chcon::                       Change SELinux context of file
++* runcon::                      Run a command in specified SELinux context
+ @end menu
+-@node chcon invocation
++@node chcon
+ @section @command{chcon}: Change SELinux context of file
+ @pindex chcon
+@@ -17369,7 +17283,7 @@ Set range @var{range} in the target secu
+ @exitstatus
+-@node runcon invocation
++@node runcon
+ @section @command{runcon}: Run a command in specified SELinux context
+ @pindex runcon
+@@ -17462,16 +17376,16 @@ different than the current one: a modifi
  user, etc.
  
  @menu
 -* chroot invocation::           Modify the root directory.
 -* env invocation::              Modify environment variables.
--* nice invocation::             Modify scheduling priority.
+-* nice invocation::             Modify niceness.
 -* nohup invocation::            Immunize to hangups.
--* su invocation::               Modify user and group id.
+-* stdbuf invocation::           Modify buffering of standard streams.
+-* timeout invocation::          Run with time limit.
 +* chroot::                      Modify the root directory.
 +* env::                         Modify environment variables.
-+* nice::                        Modify scheduling priority.
++* nice::                        Modify niceness.
 +* nohup::                       Immunize to hangups.
-+* su::                          Modify user and group id.
++* stdbuf::                      Modify buffering of standard streams.
++* timeout::                     Run with time limit.
  @end menu
  
  
  @section @command{chroot}: Run a command with a different root directory
  
  @pindex chroot
-@@ -11050,7 +10986,7 @@
- device files), copy them into place, too.
+@@ -17587,7 +17501,7 @@ the exit status of @var{command} otherwi
+ @end display
  
  
 -@node env invocation
  @section @command{env}: Run a command in a modified environment
  
  @pindex env
-@@ -11104,7 +11040,7 @@
- @end table
+@@ -18209,7 +18123,7 @@ OLDUSER=gordon
  
  
 -@node nice invocation
 +@node nice
- @section @command{nice}: Run a command with modified scheduling priority
+ @section @command{nice}: Run a command with modified niceness
  
  @pindex nice
-@@ -11151,7 +11087,7 @@
- @end table
+@@ -18340,7 +18254,7 @@ $ sudo nice -n -1 nice
+ @end example
  
  
 -@node nohup invocation
  @section @command{nohup}: Run a command immune to hangups
  
  @pindex nohup
-@@ -11201,7 +11137,7 @@
- @end display
+@@ -18414,7 +18328,7 @@ If @env{POSIXLY_CORRECT} is set, interna
+ instead of 125.
  
+-@node stdbuf invocation
++@node stdbuf
+ @section @command{stdbuf}: Run a command with modified I/O stream buffering
+ @pindex stdbuf
+@@ -18508,7 +18422,7 @@ the exit status of @var{command} otherwi
+ @end display
  
--@node su invocation
-+@node su
- @section @command{su}: Run a command with substitute user and group id
  
- @pindex su
-@@ -11348,166 +11284,6 @@
- might find this idea strange at first.
+-@node timeout invocation
++@node timeout
+ @section @command{timeout}: Run a command with a time limit
  
+ @pindex timeout
+@@ -18644,90 +18558,6 @@ timeout -s INT 5s env --ignore-signal=IN
+ timeout -s INT -k 3s 5s env --ignore-signal=INT sleep 20
+ @end example
  
 -@node Process control
 -@chapter Process control
 -kill [-l | --list | -t | --table] [@var{signal}]@dots{}
 -@end example
 -
+-@mayConflictWithShellBuiltIn{kill}
+-
 -The first form of the @command{kill} command sends a signal to all
 -@var{pid} arguments.  The default signal to send if none is specified
--is @samp{TERM}.  The special signal number @samp{0} does not denote a
+-is @samp{TERM}@.  The special signal number @samp{0} does not denote a
 -valid signal, but can be used to test whether the @var{pid} arguments
 -specify processes to which a signal could be sent.
 -
 -If @var{pid} is positive, the signal is sent to the process with the
--process id @var{pid}.  If @var{pid} is zero, the signal is sent to all
+-process ID @var{pid}.  If @var{pid} is zero, the signal is sent to all
 -processes in the process group of the current process.  If @var{pid}
--is -1, the signal is sent to all processes for which the user has
--permission to send a signal.  If @var{pid} is less than -1, the signal
+-is @minus{}1, the signal is sent to all processes for which the user has
+-permission to send a signal.  If @var{pid} is less than @minus{}1, the signal
 -is sent to all processes in the process group that equals the absolute
 -value of @var{pid}.
 -
 -processes is excluded from the list of processes to which the signal
 -is sent.
 -
--If a negative @var{PID} argument is desired as the first one, either a
--signal must be specified as well, or the option parsing
--must be interrupted with `--' before the first @var{pid} argument.
--The following three commands are equivalent:
+-If a negative @var{pid} argument is desired as the first one, it
+-should be preceded by @option{--}.  However, as a common extension to
+-POSIX, @option{--} is not required with @samp{kill
+--@var{signal} -@var{pid}}.  The following commands are equivalent:
 -
 -@example
 -kill -15 -1
 -kill -TERM -1
+-kill -s TERM -- -1
 -kill -- -1
 -@end example
 -
 -A @var{signal} may be a signal name like @samp{HUP}, or a signal
 -number like @samp{1}, or an exit status of a process terminated by the
 -signal.  A signal name can be given in canonical form or prefixed by
--@samp{SIG}.  The case of the letters is ignored, except for the
+-@samp{SIG}@.  The case of the letters is ignored, except for the
 -@option{-@var{signal}} option which must use upper case to avoid
--ambiguity with lower case option letters.  The following signal names
--and numbers are supported on all @acronym{POSIX} compliant systems:
--
--@table @samp
--@item HUP
--1.  Hangup.
--@item INT
--2.  Terminal interrupt.
--@item QUIT
--3.  Terminal quit.
--@item ABRT
--6.  Process abort.
--@item KILL
--9.  Kill (cannot be caught or ignored).
--@item ALRM
--14.  Alarm Clock.
--@item TERM
--15.  Termination.
--@end table
--
--@noindent
--Other supported signal names have system-dependent corresponding
--numbers.  All systems conforming to @acronym{POSIX} 1003.1-2001 also
--support the following signals:
--
--@table @samp
--@item BUS
--Access to an undefined portion of a memory object.
--@item CHLD
--Child process terminated, stopped, or continued.
--@item CONT
--Continue executing, if stopped.
--@item FPE
--Erroneous arithmetic operation.
--@item ILL
--Illegal Instruction.
--@item PIPE
--Write on a pipe with no one to read it.
--@item SEGV
--Invalid memory reference.
--@item STOP
--Stop executing (cannot be caught or ignored).
--@item TSTP
--Terminal stop.
--@item TTIN
--Background process attempting read.
--@item TTOU
--Background process attempting write.
--@item URG
--High bandwidth data is available at a socket.
--@item USR1
--User-defined signal 1.
--@item USR2
--User-defined signal 2.
--@end table
--
--@noindent
--@acronym{POSIX} 1003.1-2001 systems that support the @acronym{XSI} extension
--also support the following signals:
--
--@table @samp
--@item POLL
--Pollable event.
--@item PROF
--Profiling timer expired.
--@item SYS
--Bad system call.
--@item TRAP
--Trace/breakpoint trap.
--@item VTALRM
--Virtual timer expired.
--@item XCPU
--CPU time limit exceeded.
--@item XFSZ
--File size limit exceeded.
--@end table
--
--@noindent
--@acronym{POSIX} 1003.1-2001 systems that support the @acronym{XRT} extension
--also support at least eight real-time signals called @samp{RTMIN},
--@samp{RTMIN+1}, @dots{}, @samp{RTMAX-1}, @samp{RTMAX}.
--
+-ambiguity with lower case option letters.
+-@xref{Signal specifications}, for a list of supported
+-signal names and numbers.
 -
  @node Delaying
  @chapter Delaying
  
-@@ -11517,11 +11293,11 @@
+@@ -18737,11 +18567,11 @@ signal names and numbers.
  @c Perhaps @command{wait} or other commands should be described here also?
  
  @menu
  @section @command{sleep}: Delay for a specified time
  
  @pindex sleep
-@@ -11565,12 +11341,12 @@
+@@ -18804,13 +18634,13 @@ options}.
  These programs do numerically-related operations.
  
  @menu
 -* factor invocation::              Show factors of numbers.
+-* numfmt invocation::              Reformat numbers.
 -* seq invocation::                 Print sequences of numbers.
 +* factor::                         Show factors of numbers.
++* numfmt::                         Reformat numbers.
 +* seq::                            Print sequences of numbers.
  @end menu
  
  @section @command{factor}: Print prime factors
  
  @pindex factor
-@@ -11608,7 +11384,7 @@
- 18446744073709551615: 3 5 17 257 641 65537 6700417
+@@ -18875,7 +18705,7 @@ are the product of two large primes), ot
+ @exitstatus
+-@node numfmt invocation
++@node numfmt
+ @section @command{numfmt}: Reformat numbers
+ @pindex numfmt
+@@ -19228,7 +19058,7 @@ $ LC_ALL=ta_IN numfmt --from=iec --forma
  @end example
  
 -@node seq invocation
 +@node seq
  @section @command{seq}: Print numeric sequences
  
  @pindex seq
+@@ -19403,7 +19233,7 @@ Naively, a file's atime, mtime, and ctim
+ whenever you read, write, or change the attributes of the file
+ respectively, and searching a directory counts as reading it.  A
+ file's atime and mtime can also be set directly, via the
+-@command{touch} command (@pxref{touch invocation}).  In practice,
++@command{touch} command (@pxref{touch}).  In practice,
+ though, timestamps are not updated quite that way.
+ For efficiency reasons, many systems are lazy about updating atimes:
This page took 0.179154 seconds and 4 git commands to generate.