logo

utils-std

Collection of commonly available Unix tools
commit: 909ed42b6f1a554c20f1ddf8868141d801e4da00
parent b29dabaedac29761cf3aed113a0373a95369a41a
Author: Haelwenn (lanodan) Monnier <contact@hacktivis.me>
Date:   Thu, 25 Jul 2024 03:17:05 +0200

cmd/*.1: Ack 1003.1-2024 aka SUSv8

Diffstat:

Mcmd/basename.12+-
Mcmd/cat.12+-
Mcmd/chmod.12+-
Mcmd/chown.12+-
Mcmd/cmp.12+-
Mcmd/df.12+-
Mcmd/dirname.110+++-------
Mcmd/echo.15+++--
Mcmd/env.12+-
Mcmd/head.17+------
Mcmd/id.12+-
Mcmd/ln.12+-
Mcmd/logname.12+-
Mcmd/mkdir.12+-
Mcmd/mkfifo.12+-
Mcmd/nice.12+-
Mcmd/nohup.12+-
Mcmd/pathchk.13++-
Mcmd/pwd.12+-
Mcmd/readlink.15+++--
Mcmd/realpath.15+++--
Mcmd/rm.19+++------
Mcmd/rmdir.15+++--
Mcmd/sleep.15+++++
Mcmd/strings.17+++++--
Mcmd/tee.12+-
Mcmd/test.167+++++++++++++++++++++++++++++++++++--------------------------------
Mcmd/time.12+-
Mcmd/touch.1.in2+-
Mcmd/tr.110+++++++---
Mcmd/tty.12+-
Mcmd/uname.12+-
Mcmd/uniq.12+-
Mcmd/unlink.12+-
Mcmd/wc.12+-
35 files changed, 96 insertions(+), 88 deletions(-)

diff --git a/cmd/basename.1 b/cmd/basename.1 @@ -29,7 +29,7 @@ when applicable. .Sh STANDARDS .Nm is close but not compliant with the -.St -p1003.1-2008 +IEEE Std 1003.1-2024 (“POSIX.1”) specification as it uses .Xr basename 3 directly instead of extracting the non-directory portion of diff --git a/cmd/cat.1 b/cmd/cat.1 @@ -48,7 +48,7 @@ Get a stopwatch utility which stops once EOF is pressed. .Sh STANDARDS .Nm is mostly compliant with the -.St -p1003.1-2008 +IEEE Std 1003.1-2024 (“POSIX.1”) specification. .Sh AUTHORS .An Haelwenn (lanodan) Monnier Aq Mt contact+utils@hacktivis.me diff --git a/cmd/chmod.1 b/cmd/chmod.1 @@ -79,7 +79,7 @@ Sticky bit. .Sh STANDARDS .Nm should be compliant with the -.St -p1003.1-2008 +IEEE Std 1003.1-2024 (“POSIX.1”) specification. .Pp The diff --git a/cmd/chown.1 b/cmd/chown.1 @@ -76,7 +76,7 @@ Verbose, print a message about each processed file, whether a change was made or .Sh STANDARDS .Nm should be compliant with the -.St -p1003.1-2008 +IEEE Std 1003.1-2024 (“POSIX.1”) specification. .Pp The diff --git a/cmd/cmp.1 b/cmd/cmp.1 @@ -87,7 +87,7 @@ An error occurred. .Sh STANDARDS .Nm should be compliant with the -.St -p1003.1-2008 +IEEE Std 1003.1-2024 (“POSIX.1”) specification. The .Fl n Ar max_bytes diff --git a/cmd/df.1 b/cmd/df.1 @@ -68,7 +68,7 @@ Option can be passed multiple times to exclude multiple types. .Sh STANDARDS .Nm should be compliant with the -.St -p1003.1-2008 +IEEE Std 1003.1-2024 (“POSIX.1”) specification. .Pp .Fl l , diff --git a/cmd/dirname.1 b/cmd/dirname.1 @@ -19,12 +19,8 @@ Returns the parent directory of .Xr direname 3 .Sh STANDARDS .Nm -is close but not compliant with the -.St -p1003.1-2008 -specification as it uses -.Xr dirname 3 -directly instead of extracting the non-directory portion of -.Ar string -with it's own algorithm. +should be compliant with the +IEEE Std 1003.1-2024 (“POSIX.1”) +specification. .Sh AUTHORS .An Haelwenn (lanodan) Monnier Aq Mt contact+utils@hacktivis.me diff --git a/cmd/echo.1 b/cmd/echo.1 @@ -37,7 +37,8 @@ Do not print the trailing newline character. Not XSI-compliant as .Fl n is parsed as an option and backslash operators aren't supported. -Should be compliant with the rest of -.St -p1003.1-2008 +Should be compliant with the rest of the +IEEE Std 1003.1-2024 (“POSIX.1”) +specification. .Sh AUTHORS .An Haelwenn (lanodan) Monnier Aq Mt contact+utils@hacktivis.me diff --git a/cmd/env.1 b/cmd/env.1 @@ -63,7 +63,7 @@ wasn't found. .Sh STANDARDS .Nm should be compliant with the -.St -p1003.1-2008 +IEEE Std 1003.1-2024 (“POSIX.1”) specification. .Pp The diff --git a/cmd/head.1 b/cmd/head.1 @@ -74,15 +74,10 @@ is set: .Sh STANDARDS .Nm should be compliant with the -.St -p1003.1-2008 +IEEE Std 1003.1-2024 (“POSIX.1”) specification. .br The -.Fl c -option is from -IEEE P1003.1-202x/D4 (“POSIX.1”). -.br -The .Fl q and .Fl v diff --git a/cmd/id.1 b/cmd/id.1 @@ -49,7 +49,7 @@ Output the real IDs instead of effective IDs. .Sh STANDARDS .Nm should be compliant with the -.St -p1003.1-2008 +IEEE Std 1003.1-2024 (“POSIX.1”) specification. .Sh AUTHORS .An Haelwenn (lanodan) Monnier Aq Mt contact+utils@hacktivis.me diff --git a/cmd/ln.1 b/cmd/ln.1 @@ -69,7 +69,7 @@ Create symbolic links instead of hard links. .Sh STANDARDS .Nm should be compliant with the -.St -p1003.1-2008 +IEEE Std 1003.1-2024 (“POSIX.1”) specification. The .Fl n diff --git a/cmd/logname.1 b/cmd/logname.1 @@ -22,7 +22,7 @@ Should be equivalent to .Sh STANDARDS .Nm should be compliant with the -.St -p1003.1-2008 +IEEE Std 1003.1-2024 (“POSIX.1”) specification. .Sh AUTHORS .An Haelwenn (lanodan) Monnier Aq Mt contact+utils@hacktivis.me diff --git a/cmd/mkdir.1 b/cmd/mkdir.1 @@ -39,7 +39,7 @@ Verbose mode, print each successfully made directory. .Sh STANDARDS .Nm should be compliant with the -.St -p1003.1-2008 +IEEE Std 1003.1-2024 (“POSIX.1”) specification. .Pp The diff --git a/cmd/mkfifo.1 b/cmd/mkfifo.1 @@ -29,7 +29,7 @@ relative to 0666/rw-rw-rw using the same format as .Sh STANDARDS .Nm should be compliant with the -.St -p1003.1-2008 +IEEE Std 1003.1-2024 (“POSIX.1”) specification. .Sh AUTHORS .An Haelwenn (lanodan) Monnier Aq Mt contact+utils@hacktivis.me diff --git a/cmd/nice.1 b/cmd/nice.1 @@ -51,7 +51,7 @@ wasn't found. .Sh STANDARDS .Nm should be compliant with the -.St -p1003.1-2008 +IEEE Std 1003.1-2024 (“POSIX.1”) specification. .Sh AUTHORS .An Haelwenn (lanodan) Monnier Aq Mt contact+utils@hacktivis.me diff --git a/cmd/nohup.1 b/cmd/nohup.1 @@ -50,7 +50,7 @@ utility. .Sh STANDARDS .Nm should be compliant with the -.St -p1003.1-2008 +IEEE Std 1003.1-2024 (“POSIX.1”) specification. .Sh AUTHORS .An Haelwenn (lanodan) Monnier Aq Mt contact+utils@hacktivis.me diff --git a/cmd/pathchk.1 b/cmd/pathchk.1 @@ -63,6 +63,7 @@ Isn't empty .Sh STANDARDS .Nm should be compliant with -IEEE P1003.1-202x/D4 (“POSIX.1”). +IEEE Std 1003.1-2024 (“POSIX.1”) +specification. .Sh AUTHORS .An Haelwenn (lanodan) Monnier Aq Mt contact+utils@hacktivis.me diff --git a/cmd/pwd.1 b/cmd/pwd.1 @@ -19,7 +19,7 @@ Zero. .Sh STANDARDS .Nm should be compliant with the -.St -p1003.1-2008 +IEEE Std 1003.1-2024 (“POSIX.1”) specification. .Sh AUTHORS .An Haelwenn (lanodan) Monnier Aq Mt contact+utils@hacktivis.me diff --git a/cmd/readlink.1 b/cmd/readlink.1 @@ -61,8 +61,9 @@ and read it: .Xr readlink 3 .Sh STANDARDS .Nm -should be compliant with -IEEE P1003.1-202x/D4 (“POSIX.1”). +should be compliant with the +IEEE Std 1003.1-2024 (“POSIX.1”) +specification. .Pp The options .Fl f , diff --git a/cmd/realpath.1 b/cmd/realpath.1 @@ -43,8 +43,9 @@ Use NULL byte as separator instead of newlines. .Xr realpath 3 .Sh STANDARDS .Nm -should be compliant with -IEEE P1003.1-202x/D4 (“POSIX.1”). +should be compliant with the +IEEE Std 1003.1-2024 (“POSIX.1”) +specification. .Pp The options .Fl n diff --git a/cmd/rm.1 b/cmd/rm.1 @@ -47,11 +47,8 @@ Verbose: Print when a file got removed .Xr unlink 2 .Sh STANDARDS .Nm -should be compliant with -.St -p1003.1-2008 . -The -.Fl fdv -options are part of -IEEE P1003.1-202x/D4 (“POSIX.1”). +should be compliant with the +IEEE Std 1003.1-2024 (“POSIX.1”) +specification. .Sh AUTHORS .An Haelwenn (lanodan) Monnier Aq Mt contact+utils@hacktivis.me diff --git a/cmd/rmdir.1 b/cmd/rmdir.1 @@ -35,7 +35,8 @@ Verbose, print each action done .Xr rm 1 .Sh STANDARDS .Nm -should be compliant with -.St -p1003.1-2008 +should be compliant with the +IEEE Std 1003.1-2024 (“POSIX.1”) +specification. .Sh AUTHORS .An Haelwenn (lanodan) Monnier Aq Mt contact+utils@hacktivis.me diff --git a/cmd/sleep.1 b/cmd/sleep.1 @@ -26,5 +26,10 @@ Longer durations are taken as out of scope. .Xr at 1 , .Xr crontab 1 , .Xr nanosleep 3 +.Sh STANDARDS +.Nm +should be compliant with the +IEEE Std 1003.1-2024 (“POSIX.1”) +specification. .Sh AUTHORS .An Haelwenn (lanodan) Monnier Aq Mt contact+utils@hacktivis.me diff --git a/cmd/strings.1 b/cmd/strings.1 @@ -21,7 +21,10 @@ in sequence and writes printable strings longer than 4 or .Ar number . If no .Ar file -is given, +is given or +.Ar file +is +.Ql - , .Nm reads from the standard input. .Sh OPTIONS @@ -52,7 +55,7 @@ Hexadecimal .Sh STANDARDS .Nm should be compliant with the -.St -p1003.1-2008 +IEEE Std 1003.1-2024 (“POSIX.1”) specification. .Sh AUTHORS .An Haelwenn (lanodan) Monnier Aq Mt contact+utils@hacktivis.me diff --git a/cmd/tee.1 b/cmd/tee.1 @@ -29,7 +29,7 @@ Ignore SIGINT .Sh STANDARDS .Nm should be compliant with the -.St -p1003.1-2008 +IEEE Std 1003.1-2024 (“POSIX.1”) specification. .Sh AUTHORS .An Haelwenn (lanodan) Monnier Aq Mt contact+utils@hacktivis.me diff --git a/cmd/test.1 b/cmd/test.1 @@ -84,6 +84,12 @@ exists and is a directory. True if .Ar file exists (regardless of type). +.It Ar file1 Fl ef Ar file2 +True if +.Ar file1 +and +.Ar file2 +exist and refer to the same file. .It Fl f Ar file True if .Ar file @@ -102,6 +108,10 @@ this program. Do not rely on its existence; use .Fl L instead. +.It Fl L Ar file +True if +.Ar file +exists and is a symbolic link. .It Fl k Ar file True if .Ar file @@ -110,6 +120,16 @@ exists and its sticky bit is set. True if the length of .Ar string is nonzero. +.It Ar file1 Fl nt Ar file2 +True if +.Ar file1 +exists and is newer than +.Ar file2 . +.It Ar file1 Fl ot Ar file2 +True if +.Ar file1 +exists and is older than +.Ar file2 . .It Fl p Ar file True if .Ar file @@ -119,6 +139,10 @@ is a named pipe True if .Ar file exists and is readable. +.It Fl S Ar file +True if +.Ar file +exists and is a socket. .It Fl s Ar file True if .Ar file @@ -157,10 +181,6 @@ can be searched. True if the length of .Ar string is zero. -.It Fl L Ar file -True if -.Ar file -exists and is a symbolic link. .It Fl O Ar file True if .Ar file @@ -169,26 +189,6 @@ exists and its owner matches the effective user id of this process. True if .Ar file exists and its group matches the effective group id of this process. -.It Fl S Ar file -True if -.Ar file -exists and is a socket. -.It Ar file1 Fl nt Ar file2 -True if -.Ar file1 -exists and is newer than -.Ar file2 . -.It Ar file1 Fl ot Ar file2 -True if -.Ar file1 -exists and is older than -.Ar file2 . -.It Ar file1 Fl ef Ar file2 -True if -.Ar file1 -and -.Ar file2 -exist and refer to the same file. .It Ar string True if .Ar string @@ -365,22 +365,25 @@ with the same meaning. .Xr stat 1 , .Xr symlink 7 .Sh STANDARDS -The .Nm -utility implements a superset of the -.St -p1003.2 +should be compliant with the +IEEE Std 1003.1-2024 (“POSIX.1”) specification. +.Pp The primaries -.Cm < , .Cm == , -.Cm > , -.Fl ef , -.Fl nt , -.Fl ot , .Fl G , and .Fl O are extensions. +The +.Fl a , +.Fl o +binary primaries, and +.Ql \&( +and +.Ql \&) +operators are kept for backward compatibility but should be taken as deprecated. .Sh HISTORY A .Nm diff --git a/cmd/time.1 b/cmd/time.1 @@ -42,7 +42,7 @@ could not be found .Sh STANDARDS .Nm should be compliant with the -.St -p1003.1-2008 +IEEE Std 1003.1-2024 (“POSIX.1”) specification. .Sh AUTHORS .An Haelwenn (lanodan) Monnier Aq Mt contact+utils@hacktivis.me diff --git a/cmd/touch.1.in b/cmd/touch.1.in @@ -69,7 +69,7 @@ is given but the file doesn't exists. .Sh STANDARDS .Nm should be compliant with the -.St -p1003.1-2008 +IEEE Std 1003.1-2024 (“POSIX.1”) specification. .Pp .Fl h diff --git a/cmd/tr.1 b/cmd/tr.1 @@ -272,15 +272,19 @@ The following examples are shown as given to the shell: Create a list of the words in file1, one per line, where a word is taken to be a maximal string of letters. .Pp -.Dl $ tr -cs Qo [:alpha:] Qc Qo \en Qc < file1 +.Dl $ tr -cs '[:alpha:]' '[\en*]' < file1 .Pp Translate the contents of file1 to upper-case. .Pp -.Dl $ tr Qo [:lower:] Qc Qo [:upper:] Qc < file1 +.Dl $ tr '[:lower:]' '[:upper:]' < file1 .Pp Strip out non-printable characters from file1. .Pp -.Dl $ tr -cd Qo [:print:] Qc < file1 +.Dl $ tr -cd '[:print:]' < file1 +.\" .Pp +.\" Strip out diacritical marks from the base character +.\" .Ql e . +.\" .Dl $ tr '[=e=]' '[e*]' < file1 > file2 .Sh SEE ALSO .Xr sed 1 .Sh STANDARDS diff --git a/cmd/tty.1 b/cmd/tty.1 @@ -26,7 +26,7 @@ An error occured. .Sh STANDARDS .Nm should be compliant with the -.St -p1003.1-2008 +IEEE Std 1003.1-2024 (“POSIX.1”) specification. .Sh AUTHORS .An Haelwenn (lanodan) Monnier Aq Mt contact+utils@hacktivis.me diff --git a/cmd/uname.1 b/cmd/uname.1 @@ -40,7 +40,7 @@ was specified. .Sh STANDARDS .Nm should be compliant with the -.St -p1003.1-2008 +IEEE Std 1003.1-2024 (“POSIX.1”) specification. .Sh AUTHORS .An Haelwenn (lanodan) Monnier Aq Mt contact+utils@hacktivis.me diff --git a/cmd/uniq.1 b/cmd/uniq.1 @@ -48,7 +48,7 @@ Only write unique lines (count == 1). .Sh STANDARDS .Nm should be compliant with the -.St -p1003.1-2008 +IEEE Std 1003.1-2024 (“POSIX.1”) specification. .Sh AUTHORS .An Haelwenn (lanodan) Monnier Aq Mt contact+utils@hacktivis.me diff --git a/cmd/unlink.1 b/cmd/unlink.1 @@ -28,7 +28,7 @@ is deleted. .Sh STANDARDS .Nm should be compliant with the -.St -p1003.1-2008 +IEEE Std 1003.1-2024 (“POSIX.1”) specification. .Sh AUTHORS .An Haelwenn (lanodan) Monnier Aq Mt contact+utils@hacktivis.me diff --git a/cmd/wc.1 b/cmd/wc.1 @@ -91,7 +91,7 @@ is given, a final line is printed with "total" instead of a pathname. .Sh STANDARDS .Nm should be compliant with the -.St -p1003.1-2008 +IEEE Std 1003.1-2024 (“POSIX.1”) specification. .Sh AUTHORS .An Haelwenn (lanodan) Monnier Aq Mt contact+utils@hacktivis.me