]> TLD Linux GIT Repositories - packages/coreutils.git/blobdiff - coreutils-info.patch
- merged 9.5 from PLD
[packages/coreutils.git] / coreutils-info.patch
index 2019f5e8441183cacff2b83469e4c6f50d143149..da9e259009446c1829f4742d3bff7a81158fdb45 100644 (file)
@@ -1,6 +1,6 @@
---- coreutils-8.21/doc/coreutils.texi.orig     2013-02-11 10:37:28.000000000 +0100
-+++ coreutils-8.21/doc/coreutils.texi  2013-02-24 17:41:00.409391351 +0100
-@@ -20,120 +20,109 @@
+--- coreutils-9.5/doc/coreutils.texi.orig      2024-03-24 18:51:06.000000000 +0100
++++ coreutils-9.5/doc/coreutils.texi   2024-03-28 22:13:57.040433328 +0100
+@@ -24,124 +24,113 @@
  @syncodeindex pg cp
  @syncodeindex vr cp
  
@@ -11,7 +11,7 @@
 +* Coreutils: (coreutils).             Core GNU (file, text, shell) utilities
  * Common options: (coreutils)Common options.
 -* File permissions: (coreutils)File permissions.  Access modes.
-+* File permissions: (coreutils)File permissions.      Access modes
++* File permissions: (coreutils)File permissions.      Access modes.
  * Date input formats: (coreutils)Date input formats.
 -@end direntry
 -
 -@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.
 -* 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 file system 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 last file name component.
--* du: (coreutils)du invocation.                 Report on disk usage.
+-* 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.
@@ -55,7 +58,7 @@
 -* hostid: (coreutils)hostid invocation.         Print numeric host identifier.
 -* hostname: (coreutils)hostname invocation.     Print or set system name.
 -* id: (coreutils)id invocation.                 Print user identity.
--* install: (coreutils)install invocation.       Copy and change attributes.
+-* 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.
 -* 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.
+-* pinky: (coreutils)pinky invocation.           Print information about users.
 -* pr: (coreutils)pr invocation.                 Paginate or columnate files.
 -* printenv: (coreutils)printenv invocation.     Print environment variables.
 -* printf: (coreutils)printf invocation.         Format and print data.
 -* 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)readpath invocation.     Print resolved file names.
+-* 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.
 -* stdbuf: (coreutils)stdbuf invocation.         Modify stdio buffering.
 -* stty: (coreutils)stty invocation.             Print/change terminal settings.
 -* 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.
 -* who: (coreutils)who invocation.               Print who is logged in.
 -* whoami: (coreutils)whoami invocation.         Print effective user ID.
 -* yes: (coreutils)yes invocation.               Print a string indefinitely.
-+* arch: (coreutils)arch.              Print machine hardware name
-+* base64: (coreutils)base64.          Base64 encode/decode data
-+* basename: (coreutils)basename.      Strip directory and suffix
-+* 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 disk 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 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
-+* 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 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 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
++* 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
-+* realpath: (coreutils)readpath.      Print resolved file names
-+* rm: (coreutils)rm.                  Remove files
-+* rmdir: (coreutils)rmdir.            Remove empty directories
-+* runcon: (coreutils)runcon.          Run in specified SELinux CTX
++* paste: (coreutils)paste.            Merge lines of files.
++* pathchk: (coreutils)pathchk.                Check file name portability.
++* pinky: (coreutils)pinky.            Print information about users.
++* 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
-+* 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.              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
-+* 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
++* 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
-@@ -198,10 +187,9 @@
+@@ -206,10 +195,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
  * Modified command invocation::  chroot env nice nohup stdbuf timeout
 -* Process control::              kill
  * Delaying::                     sleep
- * Numeric operations::           factor seq
+ * Numeric operations::           factor numfmt seq
  * File permissions::             Access modes
-@@ -230,45 +218,45 @@
+@@ -241,45 +229,45 @@ Common Options
  
  Output of entire 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
--* numfmt invocation::            Reformat numbers
 -* pr invocation::                Paginate or columnate files for printing
 -* fold invocation::              Wrap input lines to fit in specified width
 +* fmt::                          Reformat paragraph text
-+* numfmt::                       Reformat numbers
 +* pr::                           Paginate or columnate files for printing
 +* fold::                         Wrap input lines to fit in specified width
  
- @command{numfmt}: General Options, Units
  Output of parts of files
  
 -* head invocation::              Output the first part of files
 -* sum invocation::               Print checksum and block counts
 -* cksum invocation::             Print CRC checksum and byte counts
 -* md5sum invocation::            Print or check MD5 digests
+-* b2sum invocation::             Print or check BLAKE2 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
  
  @command{ptx}: Produce permuted indexes
  
-@@ -280,15 +268,15 @@
+@@ -291,15 +279,15 @@ Operating on sorted files
  
  Operating on fields
  
  
  @command{tr}: Translate, squeeze, and/or delete characters
  
-@@ -298,10 +286,10 @@
+@@ -309,10 +297,10 @@ Operating on characters
  
  Directory listing
  
  
  @command{ls}:  List directory contents
  
-@@ -314,51 +302,51 @@
+@@ -324,51 +312,51 @@ Directory listing
  
  Basic operations
  
 +* chmod::                        Change access permissions
 +* touch::                        Change file timestamps
  
Disk usage
File space usage
  
--* df invocation::                Report file system disk 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 data on disk with memory
+-* sync invocation::              Synchronize cached writes to persistent storage
 -* truncate invocation::          Shrink or extend the size of a file
-+* df::                           Report file system disk space usage
++* df::                           Report file system space usage
 +* du::                           Estimate file space usage
 +* stat::                         Report file or file system status
-+* sync::                         Synchronize data on disk with memory
++* sync::                         Synchronize cached writes to persistent storage
 +* truncate::                     Shrink or extend the size of a file
  
  Printing text
  
  @command{test}: Check file types and compare values
  
-@@ -377,22 +365,22 @@
+@@ -387,22 +375,22 @@ Conditions
  
  Redirection
  
  
  @command{stty}: Print or change terminal characteristics
  
-@@ -406,22 +394,20 @@
+@@ -416,23 +404,21 @@ Working context
  
  User information
  
 -* 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
+-* pinky invocation::             Print information about users
 +* id::                           Print user identity
 +* logname::                      Print current login name
 +* 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
++* pinky::                        Print information about users
  
  System context
  
  
  @command{date}: Print or set system date and time
  
-@@ -436,30 +422,26 @@
+@@ -447,31 +433,27 @@ System context
  
  SELinux context
  
  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
  
-@@ -1477,14 +1459,14 @@
+ File timestamps
+@@ -1628,16 +1610,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
-@@ -1584,7 +1566,7 @@
- @end smallexample
+@@ -1739,7 +1721,7 @@ cat
+ @end example
  
  
 -@node tac invocation
  @section @command{tac}: Concatenate and write files in reverse
  
  @pindex tac
-@@ -1640,7 +1622,7 @@
+@@ -1797,7 +1779,7 @@ tac -r -s 'x\|[^x]'
  @end example
  
  
  @section @command{nl}: Number lines and write files
  
  @pindex nl
-@@ -1803,7 +1785,7 @@
+@@ -1965,7 +1947,7 @@ Use @var{number} characters for line num
  @exitstatus
  
  
  @section @command{od}: Write files in octal or other formats
  
  @pindex od
-@@ -2057,7 +2039,7 @@
+@@ -2237,7 +2219,7 @@ address.
  @exitstatus
  
+-@node base32 invocation
++@node base32
+ @section @command{base32}: Transform data into printable data
+ @pindex base32
+@@ -2247,11 +2229,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
-@@ -2125,14 +2107,14 @@
+@@ -2272,7 +2254,7 @@ The base32 encoding expands data to roug
+ The format conforms to
+ @uref{https://datatracker.ietf.org/doc/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}.
+@@ -2313,7 +2295,7 @@ to permit distorted data to be decoded.
+ @exitstatus
+-@node basenc invocation
++@node basenc
+ @section @command{basenc}: Transform data into printable data
+ @pindex basenc
+@@ -2334,7 +2316,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:
+@@ -2449,13 +2431,13 @@ $ printf 01010100 | basenc --base2lsbf -
  These commands reformat the contents of files.
  
  @menu
 -* fmt invocation::              Reformat paragraph text.
--* numfmt invocation::           Reformat numbers.
 -* pr invocation::               Paginate or columnate files for printing.
 -* fold invocation::             Wrap input lines to fit in specified width.
 +* fmt::                         Reformat paragraph text.
-+* numfmt::                      Reformat numbers.
 +* pr::                          Paginate or columnate files for printing.
 +* fold::                        Wrap input lines to fit in specified width.
  @end menu
  @section @command{fmt}: Reformat paragraph text
  
  @pindex fmt
-@@ -2236,7 +2218,7 @@
+@@ -2559,7 +2541,7 @@ leaving the code unchanged.
  
  @exitstatus
  
--@node numfmt invocation
-+@node numfmt
- @section @command{numfmt}: Reformat numbers
- @pindex numfmt
-@@ -2556,7 +2538,7 @@
- == 2,14,74,83,648==
- @end example
 -@node pr invocation
 +@node pr
  @section @command{pr}: Paginate or columnate files for printing
  
  @pindex pr
-@@ -2666,7 +2648,7 @@
+@@ -2671,7 +2653,7 @@ Double space the output.
  @cindex time formats
  @cindex formatting times
  Format header dates using @var{format}, using the same conventions as
  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,
-@@ -2893,7 +2875,7 @@
+@@ -2901,7 +2883,7 @@ line is never truncated.
  @exitstatus
  
  
  @section @command{fold}: Wrap input lines to fit in specified width
  
  @pindex fold
-@@ -2960,13 +2942,13 @@
+@@ -2968,13 +2950,13 @@ instead.
  These commands output pieces of the input.
  
  @menu
  @section @command{head}: Output the first part of files
  
  @pindex head
-@@ -3043,7 +3025,7 @@
+@@ -3053,7 +3035,7 @@ avoid @command{head}, e.g., by using @sa
  @exitstatus
  
  
  @section @command{tail}: Output the last part of files
  
  @pindex tail
-@@ -3273,7 +3255,7 @@
+@@ -3307,7 +3289,7 @@ mean either @samp{tail ./+4} or @samp{ta
  @exitstatus
  
  
  @section @command{split}: Split a file into pieces.
  
  @pindex split
-@@ -3502,7 +3484,7 @@
+@@ -3564,7 +3546,7 @@ $ seq 100 > k; split -nl/7/33 k
  @end example
  
  
  @section @command{csplit}: Split a file into context-determined pieces
  
  @pindex csplit
-@@ -3693,16 +3675,16 @@
+@@ -3784,17 +3766,17 @@ These commands generate just a few numbe
  contents of files.
  
  @menu
 -* sum invocation::              Print checksum and block counts.
 -* cksum invocation::            Print CRC checksum and byte counts.
 -* md5sum invocation::           Print or check MD5 digests.
+-* b2sum invocation::            Print or check BLAKE2 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 MD5 digests.
-+* sha1sum::                     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 MD5 digests.
++* b2sum::            Print or check BLAKE2 digests.
++* sha1sum::          Print or check SHA-1 digests.
  * sha2 utilities::              Print or check SHA-2 digests.
  @end menu
  
  @section @command{wc}: Print newline, word, and byte counts
  
  @pindex wc
-@@ -3820,7 +3802,7 @@
+@@ -3955,7 +3937,7 @@ find . -name '*.[ch]' -print0 |
  @exitstatus
  
  
  @section @command{sum}: Print checksum and block counts
  
  @pindex sum
-@@ -3871,7 +3853,7 @@
+@@ -4004,7 +3986,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
-@@ -3905,7 +3887,7 @@
- @exitstatus
+@@ -4052,7 +4034,7 @@ The 32-bit CRC used is based on the poly
+ for CRC error checking in the ISO/IEC 8802-3:1996 standard (Ethernet).
+ Similar output formats are used for the other legacy checksums
+ selectable with @option{--algorithm=sysv} or @option{--algorithm=bsd},
+-detailed at @ref{sum invocation}.
++detailed at @ref{sum}.
+ @item Tagged output format
+ With the @option{--algorithm} option selecting non legacy checksums,
+@@ -4302,7 +4284,7 @@ exit nonzero after all warnings have bee
+ Also file name escaping is not used.
+ @end table
  
 -@node md5sum invocation
 +@node md5sum
  @section @command{md5sum}: Print or check MD5 digests
  
  @pindex md5sum
-@@ -4051,7 +4033,7 @@
+@@ -4325,7 +4307,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 @command{b2sum}.
+-@xref{sha2 utilities}. @xref{b2sum invocation}.
++@xref{sha2 utilities}. @xref{b2sum}.
+ @end macro
+ @weakHash{MD5}
+@@ -4349,7 +4331,7 @@ The program accepts @ref{cksum common op
  @exitstatus
  
  
+-@node b2sum invocation
++@node b2sum
+ @section @command{b2sum}: Print or check BLAKE2 digests
+ @pindex b2sum
+@@ -4371,7 +4353,7 @@ In addition @command{b2sum} supports the
+ @end table
 -@node sha1sum invocation
 +@node sha1sum
  @section @command{sha1sum}: Print or check SHA-1 digests
  
  @pindex sha1sum
-@@ -4063,7 +4045,7 @@
- @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}.
- Note: The SHA-1 digest is more secure than MD5, and no collisions of
- it are known (different files having the same fingerprint).  However,
-@@ -4103,7 +4085,7 @@
- various lengths (respectively 224, 256, 384 and 512 bits),
- collectively known as the SHA-2 hashes.  The usage and options of
- these commands are precisely the same as for @command{md5sum}.
--@xref{md5sum invocation}.
-+@xref{md5sum}.
- Note: The SHA384 and SHA512 digests are considerably slower to
- compute, especially on 32-bit computers, than SHA224 or SHA256.
-@@ -4118,16 +4100,16 @@
+@@ -4429,16 +4411,16 @@ collectively known as the SHA-2 hashes.
  These commands work with (or produce) sorted files.
  
  @menu
  @section @command{sort}: Sort text files
  
  @pindex sort
-@@ -4413,7 +4395,7 @@
+@@ -4737,7 +4719,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
  except that keys with the same value sort together.
  
  If multiple random sort fields are specified, the same random hash
-@@ -4601,7 +4583,7 @@
+@@ -4936,7 +4918,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
+ to 8, as performance gains diminish after 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
-@@ -4619,7 +4601,7 @@
+@@ -4954,7 +4936,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}.
  
- @macro zeroTerminatedOption
- @item -z
-@@ -4842,7 +4824,7 @@
+ @optZeroTerminated
+ @macro newlineFieldSeparator
+@@ -5170,7 +5152,7 @@ ls */* | sort -t / -k 1,1R -k 2,2
  @end itemize
  
  
  @section @command{shuf}: Shuffling text
  
  @pindex shuf
-@@ -4972,7 +4954,7 @@
+@@ -5326,7 +5308,7 @@ shuf -r -n 100 -e Head Tail
  @exitstatus
  
  
  @section @command{uniq}: Uniquify files
  
  @pindex uniq
-@@ -4994,7 +4976,7 @@
+@@ -5348,7 +5330,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}.
  
  @vindex LC_COLLATE
  Comparisons honor the rules specified by the @env{LC_COLLATE}
-@@ -5121,7 +5103,7 @@
+@@ -5514,7 +5496,7 @@ compared.
  @exitstatus
  
  
  @section @command{comm}: Compare two sorted files line by line
  
  @pindex comm
-@@ -5203,7 +5185,7 @@
+@@ -5630,7 +5612,7 @@ $ comm -12 file1 file2 | wc -l    # numb
  
  @end table
  
  @section @command{ptx}: Produce permuted indexes
  
  @pindex ptx
-@@ -5662,7 +5644,7 @@
+@@ -6120,7 +6102,7 @@ allowed with System V @command{ptx}.
  @end itemize
  
  
  @section @command{tsort}: Topological sort
  
  @pindex tsort
-@@ -5824,13 +5806,13 @@
+@@ -6282,13 +6264,13 @@ in different ways.
  @chapter Operating on fields
  
  @menu
  @section @command{cut}: Print selected parts of lines
  
  @pindex cut
-@@ -5950,7 +5932,7 @@
+@@ -6413,7 +6395,7 @@ many fields and want to print all but a
  @exitstatus
  
  
  @section @command{paste}: Merge lines of files
  
  @pindex paste
-@@ -6020,7 +6002,7 @@
+@@ -6511,7 +6493,7 @@ $ paste -d '%_' num2 let3 num2
  @exitstatus
  
  
  @section @command{join}: Join lines on a common field
  
  @pindex join
-@@ -6194,13 +6176,13 @@
- This commands operate on individual characters.
+@@ -7043,13 +7025,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
-@@ -6580,7 +6562,7 @@
+@@ -7472,7 +7454,7 @@ tr -d -- -axM
  @end itemize
  
  
  @section @command{expand}: Convert tabs to spaces
  
  @pindex expand
-@@ -6633,7 +6615,7 @@
+@@ -7541,7 +7523,7 @@ characters) on each line to spaces.
  @exitstatus
  
  
  @section @command{unexpand}: Convert spaces to tabs
  
  @pindex unexpand
-@@ -6694,14 +6676,14 @@
+@@ -7604,14 +7586,14 @@ This chapter describes the @command{ls}
  and @command{vdir}, which list information about files.
  
  @menu
  @section @command{ls}: List directory contents
  
  @pindex ls
-@@ -7566,7 +7548,7 @@
+@@ -8531,7 +8513,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
-@@ -7758,7 +7740,7 @@
+@@ -8732,7 +8714,7 @@ This is the default unless the output is
  @end table
  
  
  @section @command{dir}: Briefly list directory contents
  
  @pindex dir
-@@ -7768,10 +7750,10 @@
+@@ -8742,10 +8724,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
-@@ -7781,7 +7763,7 @@
+@@ -8755,9 +8737,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
-@@ -7868,16 +7850,16 @@
+@@ -8850,16 +8832,16 @@ This chapter describes the commands for
  copying, moving (renaming), and deleting (removing).
  
  @menu
  @section @command{cp}: Copy files and directories
  
  @pindex cp
-@@ -8332,7 +8314,7 @@
+@@ -9399,7 +9381,7 @@ option, and overrides the @option{--pres
  @exitstatus
  
  
  @section @command{dd}: Convert and copy a file
  
  @pindex dd
-@@ -8798,7 +8780,7 @@
+@@ -9709,7 +9691,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
+@@ -9987,7 +9969,7 @@ environment variable is set.
  @exitstatus
  
  
  @section @command{install}: Copy files and set attributes
  
  @pindex install
-@@ -8979,7 +8961,7 @@
+@@ -10171,7 +10153,7 @@ This option is mutually exclusive with t
  @exitstatus
  
  
  @section @command{mv}: Move (rename) files
  
  @pindex mv
-@@ -9110,7 +9092,7 @@
+@@ -10354,7 +10336,7 @@ to the system default type for destinati
  @exitstatus
  
  
  @section @command{rm}: Remove files or directories
  
  @pindex rm
-@@ -9272,7 +9254,7 @@
+@@ -10520,7 +10502,7 @@ predates the development of the @code{ge
  @exitstatus
  
  
  @section @command{shred}: Remove files more securely
  
  @pindex shred
-@@ -9282,7 +9264,7 @@
+@@ -10530,7 +10512,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
-@@ -9529,18 +9511,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
+@@ -10817,18 +10799,18 @@ Besides directories, other special file
  (FIFOs), symbolic links, sockets, and so-called @dfn{special files}.
  
  @menu
 -* 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 value of a symlink or canonical file name.
-+* 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
-@@ -9553,7 +9535,7 @@
+@@ -10841,7 +10823,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
  Synopsis:
  
  @example
-@@ -9579,7 +9561,7 @@
+@@ -10867,7 +10849,7 @@ to specify which behavior is desired.
  @exitstatus
  
  
  @section @command{ln}: Make links between files
  
  @pindex ln
-@@ -9760,7 +9742,7 @@
- '/tmp/file' -> '../a/file'
- @end smallexample
+@@ -11055,7 +11037,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.
+ over relative file name generation, as demonstrated in the following example:
  
- @item -s
-@@ -9824,7 +9806,7 @@
- @end smallexample
+ @example
+@@ -11132,7 +11114,7 @@ ln -s ../adir/afile yetanotherfile
+ @end example
  
  
 -@node mkdir invocation
  @section @command{mkdir}: Make directories
  
  @pindex mkdir
-@@ -9903,7 +9885,7 @@
+@@ -11210,7 +11192,7 @@ Print a message for each created directo
  @exitstatus
  
  
  @section @command{mkfifo}: Make FIFOs (named pipes)
  
  @pindex mkfifo
-@@ -9950,7 +9932,7 @@
+@@ -11251,7 +11233,7 @@ permission bits.  @xref{File permissions
  @exitstatus
  
  
  @section @command{mknod}: Make block or character special files
  
  @pindex mknod
-@@ -10033,7 +10015,7 @@
+@@ -11328,7 +11310,7 @@ Set the mode of created files to @var{mo
  @exitstatus
  
  
  @section @command{readlink}: Print value of a symlink or canonical file name
  
  @pindex readlink
-@@ -10135,7 +10117,7 @@
+@@ -11352,7 +11334,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.  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
+@@ -11427,7 +11409,7 @@ The @command{realpath} command without o
  @exitstatus
  
  
  @section @command{rmdir}: Remove empty directories
  
  @pindex rmdir
-@@ -10183,12 +10165,12 @@
+@@ -11474,7 +11456,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,
+@@ -11491,7 +11473,7 @@ find @var{dirname} -depth -type d -exec
  @exitstatus
  
  
  @section @command{unlink}: Remove files via the unlink syscall
  
  @pindex unlink
-@@ -10199,7 +10181,7 @@
+@@ -11502,7 +11484,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
  
  @example
  unlink @var{filename}
-@@ -10233,14 +10215,14 @@
+@@ -11536,14 +11518,14 @@ timestamps, and other information.  Coll
  These commands change file attributes.
  
  @menu
  @section @command{chown}: Change file owner and group
  
  @pindex chown
-@@ -10458,7 +10440,7 @@
- @end smallexample
+@@ -11775,7 +11757,7 @@ chown -hR root /u
+ @end example
  
  
 -@node chgrp invocation
  @section @command{chgrp}: Change group ownership
  
  @pindex chgrp
-@@ -10581,7 +10563,7 @@
- @end smallexample
+@@ -11784,7 +11766,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
+@@ -11886,7 +11868,7 @@ chgrp -hR staff /u
+ @end example
  
  
 -@node chmod invocation
  @section @command{chmod}: Change access permissions
  
  @pindex chmod
-@@ -10681,7 +10663,7 @@
- @exitstatus
+@@ -12037,7 +12019,7 @@ chmod -R a=,+rwX dir
+ @end smallexample
  
  
 -@node touch invocation
  @section @command{touch}: Change file timestamps
  
  @pindex touch
-@@ -10888,15 +10870,15 @@
- file status information, and write buffers to disk.
+@@ -12212,15 +12194,15 @@ how much storage is in use or available,
+ file status information, and write buffers to file systems.
  
  @menu
--* df invocation::               Report file system disk 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 memory and disk.
+-* sync invocation::             Synchronize cached writes to persistent storage.
 -* truncate invocation::         Shrink or extend the size of a file.
-+* df::                          Report file system disk space usage.
++* df::                          Report file system space usage.
 +* du::                          Estimate file space usage.
 +* stat::                        Report file or file system status.
-+* sync::                        Synchronize memory and disk.
++* 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 file system disk space usage
+ @section @command{df}: Report file system space usage
  
  @pindex df
-@@ -11191,7 +11173,7 @@
+@@ -12528,7 +12510,7 @@ be read and one or more of the options @
  or @option{-x} is used together with a file name argument.
  
  
  @section @command{du}: Estimate file space usage
  
  @pindex du
-@@ -11424,7 +11406,7 @@
+@@ -12787,7 +12769,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{2002-03-30 23:45:56}.  As
+ @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
-@@ -11492,7 +11474,7 @@
+@@ -12883,7 +12865,7 @@ underlying devices.
  @exitstatus
  
  
  @section @command{stat}: Report file or file system status
  
  @pindex stat
-@@ -11676,7 +11658,7 @@
+@@ -13125,7 +13107,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
-@@ -11703,7 +11685,7 @@
+@@ -13185,7 +13167,7 @@ write barriers, than a global sync(2) us
  @exitstatus
  
  
  @section @command{truncate}: Shrink or extend the size of a file
  
  @pindex truncate
-@@ -11779,13 +11761,13 @@
+@@ -13262,13 +13244,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
-@@ -11874,12 +11856,12 @@
- @var{string} contains a backslash or if the first argument is
- @option{-n}.  Portable programs can use the @command{printf} command
- if they need to omit trailing newlines or output control characters or
--backslashes.  @xref{printf invocation}.
-+backslashes.  @xref{printf}.
+@@ -13291,7 +13273,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
+@@ -13366,12 +13348,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
  
  @section @command{printf}: Format and print data
  
  @pindex printf
-@@ -12033,7 +12015,7 @@
+@@ -13533,7 +13515,7 @@ Options must precede operands.
  @exitstatus
  
  
  @section @command{yes}: Print a string until interrupted
  
  @pindex yes
-@@ -12064,14 +12046,14 @@
+@@ -13564,14 +13546,14 @@ condition of shell @code{if} statements,
  pipeline.
  
  @menu
  @section @command{false}: Do nothing, unsuccessfully
  
  @pindex false
-@@ -12101,7 +12083,7 @@
+@@ -13601,7 +13583,7 @@ Portable programs should not assume that
  non-GNU hosts.
  
  
  @section @command{true}: Do nothing, successfully
  
  @pindex true
-@@ -12137,7 +12119,7 @@
+@@ -13637,7 +13619,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
-@@ -12470,7 +12452,7 @@
+@@ -14006,7 +13988,7 @@ True if either @var{expr1} or @var{expr2
  @end table
  
  
  @section @command{expr}: Evaluate expressions
  
  @pindex expr
-@@ -12747,11 +12729,11 @@
+@@ -14283,11 +14265,11 @@ useful redirection is performed by a sep
  it's described here.
  
  @menu
  @section @command{tee}: Redirect output to multiple files or processes
  
  @pindex tee
-@@ -12912,15 +12894,15 @@
+@@ -14503,15 +14485,15 @@ tar chof - "$tardir" \
  This section describes commands that manipulate file names.
  
  @menu
  @section @command{basename}: Strip directory and suffix from a file name
  
  @pindex basename
-@@ -13006,7 +12988,7 @@
- @end smallexample
+@@ -14593,7 +14575,7 @@ basename -a -s .h include/stdio.h includ
+ @end example
  
  
 -@node dirname invocation
  @section @command{dirname}: Strip last file name component
  
  @pindex dirname
-@@ -13063,7 +13045,7 @@
- @end smallexample
+@@ -14646,7 +14628,7 @@ dirname stdio.h
+ @end example
  
  
 -@node pathchk invocation
  @section @command{pathchk}: Check file name validity and portability
  
  @pindex pathchk
-@@ -13139,7 +13121,7 @@
+@@ -14722,7 +14704,7 @@ Exit status:
  1 otherwise.
  @end display
  
  @section @command{mktemp}: Create temporary file or directory
  
  @pindex mktemp
-@@ -13314,7 +13296,7 @@
+@@ -14897,7 +14879,7 @@ Exit status:
  @end display
  
  
  @section @command{realpath}: Print the resolved file name.
  
  @pindex realpath
-@@ -13442,14 +13424,14 @@
+@@ -15089,14 +15071,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
-@@ -13496,7 +13478,7 @@
+@@ -15143,7 +15125,7 @@ environment variable is set.
  @exitstatus
  
  
  @section @command{stty}: Print or change terminal characteristics
  
  @pindex stty
-@@ -14187,7 +14169,7 @@
+@@ -15887,7 +15869,7 @@ or
  @end table
  
  
  @section @command{printenv}: Print all or some environment variables
  
  @pindex printenv
-@@ -14222,7 +14204,7 @@
+@@ -15922,7 +15904,7 @@ Exit status:
  @end display
  
  
  @section @command{tty}: Print file name of terminal on standard input
  
  @pindex tty
-@@ -14272,16 +14254,16 @@
+@@ -15972,17 +15954,17 @@ This section describes commands that pri
  logins, groups, and so forth.
  
  @menu
 -* 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.
+-* pinky invocation::            Print information about users.
 +* id::                          Print user identity.
 +* logname::                     Print current login name.
 +* 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.
++* pinky::                       Print information about users.
  @end menu
  
  
  @section @command{id}: Print user identity
  
  @pindex id
-@@ -14367,7 +14349,7 @@
- @end macro
- @primaryAndSupplementaryGroups{id,user argument}
+@@ -16089,7 +16071,7 @@ database to be consulted afresh, and so
+ @exitstatus
  
 -@node logname invocation
 +@node logname
  @section @command{logname}: Print current login name
  
  @pindex logname
-@@ -14388,7 +14370,7 @@
+@@ -16110,7 +16092,7 @@ options}.
  @exitstatus
  
  
 -@node whoami invocation
 +@node whoami
- @section @command{whoami}: Print effective user ID
+ @section @command{whoami}: Print effective user name
  
  @pindex whoami
-@@ -14404,7 +14386,7 @@
+@@ -16126,7 +16108,7 @@ options}.
  @exitstatus
  
  
  @section @command{groups}: Print group names a user is in
  
  @pindex groups
-@@ -14432,7 +14414,7 @@
- @exitstatus
+@@ -16153,7 +16135,7 @@ options}.
  
+ @exitstatus
  
 -@node users invocation
 +@node users
  @section @command{users}: Print login names of users currently logged in
  
  @pindex users
-@@ -14463,7 +14445,7 @@
+@@ -16188,7 +16170,7 @@ should not rely on its existence on non-
  @exitstatus
  
  
  @section @command{who}: Print who is currently logged in
  
  @pindex who
-@@ -14622,16 +14604,14 @@
+@@ -16342,7 +16324,7 @@ should not rely on its existence on non-
+ @exitstatus
+-@node pinky invocation
++@node pinky
+ @section @command{pinky}: Print information about users
+ @command{pinky} is a lightweight implementation of the @command{finger} command.
+@@ -16417,16 +16399,14 @@ This section describes commands that pri
  information.
  
  @menu
 -* hostname invocation::         Print or set system name.
 -* hostid invocation::           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.
++* 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
  @section @command{date}: Print or set system date and time
  
  @pindex date
-@@ -15324,7 +15304,7 @@
+@@ -17200,7 +17180,7 @@ date --date='2017-01-01 00:00:00 +0000'
  @end itemize
  
  
  @section @command{arch}: Print machine hardware name
  
  @pindex arch
-@@ -15344,7 +15324,7 @@
+@@ -17223,7 +17203,7 @@ not rely on its existence.
  @exitstatus
  
  
  @section @command{nproc}: Print the number of available processors
  
  @pindex nproc
-@@ -15381,7 +15361,7 @@
+@@ -17262,7 +17242,7 @@ If possible, exclude this @var{number} o
  @exitstatus
  
  
  @section @command{uname}: Print system information
  
  @pindex uname
-@@ -15511,31 +15491,7 @@
+@@ -17392,35 +17372,7 @@ Print the kernel version.
  @exitstatus
  
  
 -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
 -
 -
  @section @command{hostid}: Print numeric host identifier
  
  @pindex hostid
-@@ -15559,37 +15515,6 @@
+@@ -17448,44 +17400,6 @@ existence.
  
  @exitstatus
  
 -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 disk I/O).  The Linux kernel
+-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
  
-@@ -15601,11 +15526,11 @@
+@@ -17497,11 +17411,11 @@ This section describes commands for oper
  contexts.
  
  @menu
  @section @command{chcon}: Change SELinux context of file
  
  @pindex chcon
-@@ -15708,7 +15633,7 @@
+@@ -17604,7 +17518,7 @@ Set range @var{range} in the target secu
  
  @exitstatus
  
  @section @command{runcon}: Run a command in specified SELinux context
  
  @pindex runcon
-@@ -15793,16 +15718,16 @@
+@@ -17697,16 +17611,16 @@ different than the current one: a modifi
  user, etc.
  
  @menu
  @section @command{chroot}: Run a command with a different root directory
  
  @pindex chroot
-@@ -15890,7 +15815,7 @@
+@@ -17822,7 +17736,7 @@ the exit status of @var{command} otherwi
  @end display
  
  
  @section @command{env}: Run a command in a modified environment
  
  @pindex env
-@@ -16040,7 +15965,7 @@
- @end display
+@@ -18451,7 +18365,7 @@ OLDUSER=gordon
  
  
 -@node nice invocation
  @section @command{nice}: Run a command with modified niceness
  
  @pindex nice
-@@ -16167,7 +16092,7 @@
+@@ -18582,7 +18496,7 @@ $ sudo nice -n -1 nice
  @end example
  
  
  @section @command{nohup}: Run a command immune to hangups
  
  @pindex nohup
-@@ -16240,7 +16165,7 @@
+@@ -18656,7 +18570,7 @@ If @env{POSIXLY_CORRECT} is set, interna
  instead of 125.
  
  
  @section @command{stdbuf}: Run a command with modified I/O stream buffering
  
  @pindex stdbuf
-@@ -16329,7 +16254,7 @@
+@@ -18752,7 +18666,7 @@ the exit status of @var{command} otherwi
  @end display
  
  
  @section @command{timeout}: Run a command with a time limit
  
  @pindex timeout
-@@ -16416,90 +16341,6 @@
- @end display
+@@ -18888,90 +18802,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
  @node Delaying
  @chapter Delaying
  
-@@ -16509,11 +16350,11 @@
+@@ -18981,11 +18811,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
-@@ -16563,12 +16404,12 @@
+@@ -19048,13 +18878,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
-@@ -16626,7 +16467,7 @@
+@@ -19119,7 +18949,7 @@ are the product of two large primes), ot
  @exitstatus
  
  
+-@node numfmt invocation
++@node numfmt
+ @section @command{numfmt}: Reformat numbers
+ @pindex numfmt
+@@ -19475,7 +19305,7 @@ $ LC_ALL=ta_IN numfmt --from=iec --forma
+ @end example
 -@node seq invocation
 +@node seq
  @section @command{seq}: Print numeric sequences
  
  @pindex seq
+@@ -19650,7 +19480,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: