Add ENABLE_FEATURE_MDEV_RENAME_REGEXP examples to mdev documentation
[oweals/busybox.git] / docs / posix_conformance.txt
index 5f16809043c090bf4c03ccbff60ff4e8e14cac5d..d9fa116b8f34693ac9726db46b93b88666655fdf 100644 (file)
@@ -4,72 +4,72 @@ Busybox POSIX conformance table
 See POSIX documentation (1003.1-2008) here:
 http://www.opengroup.org/onlinepubs/9699919799/
 And the complete list of all utilities that POSIX covers:
-http://www.opengroup.org/onlinepubs/9699919799/utilities/utilities.html
+http://www.opengroup.org/onlinepubs/9699919799/idx/utilities.html
 
-This listing is a work in progress, and currently only covers 
-tool options (not operands, enviroment variables, return codes, etc..).
+This listing is a work in progress, and currently only covers
+tool options (not operands, environment variables, return codes, etc..).
 For each option it is set if it (a) exists and (b) compliant to POSIX 2008.
 Some options exist but there is no value in the 'compliant' column: that
-means no one has yet bothered to make sure that the option does what it is 
+means no one has yet bothered to make sure that the option does what it is
 required to do.
 
 -----------------------------------------------
 
 POSIX Tools supported only as shell built-ins (ash shell):
-  alias, bg, cd, fg, getopts, hash, jobs, read, type, umask, ulimit, 
+  alias, bg, cd, fg, getopts, hash, jobs, read, type, umask, ulimit,
   unalias, wait, write
 
 POSIX Tools not supported:
-  asa, at, batch, bc, c99, command, compress, csplit, ex, fc, file, 
-  gencat, getconf, iconv, join, link, locale, localedef, lp, m4, 
-  mailx, newgrp, nl, paste, pathchk, pax, pr, qalter, qdel, qhold, qmove, 
-  qmsg, qrerun, qrls, qselect, qsig, qstat, qsub, tabs, talk, tput, 
+  asa, at, batch, bc, c99, command, compress, csplit, ex, fc, file,
+  gencat, getconf, iconv, join, link, locale, localedef, lp, m4,
+  mailx, newgrp, nl, paste, pathchk, pax, pr, qalter, qdel, qhold, qmove,
+  qmsg, qrerun, qrls, qselect, qsig, qstat, qsub, tabs, talk, tput,
   tsort, unlink, uucp, uustat, uux
 
 POSIX Tools not supported (DEVELOPMENT):
-  admin, cflow, ctags, cxref, delta, fort77, get, lex, make, nm, prs, rmdel, 
+  admin, cflow, ctags, cxref, delta, fort77, get, lex, make, nm, prs, rmdel,
   sact, sccs, strip, unget, val, what, yacc
 
 
 POSIX Tools supported:
 
-Note: echo, printf, kill, pwd documented here as stand-alone applets, 
+Note: echo, printf, kill, pwd documented here as stand-alone applets,
       not as ash built-ins.
 
 
-ar POSIX options
- option           | exists | compliant | remarks
-  -C              |  no    | no        |  
-  -T              |  no    | no        |  
-  -a              |  no    | no        |  
-  -b              |  no    | no        |  
-  -c              |  no    | no        |  
-  -d              |  no    | no        |  
-  -i              |  no    | no        |  
-  -m              |  no    | no        |  
-  -p              |  yes   |           |  
-  -q              |  no    | no        |  
-  -r              |  no    | no        |  
-  -s              |  no    | no        |  
-  -t              |  yes   |           |  
-  -u              |  no    | no        |  
-  -v              |  yes   |           |  
-  -x              |  yes   |           |  
-ar Busybox specific options: 
+ar POSIX options ********************* Failed to recognize zip & tar (did not compare to regular ar)
+ option           | exists | compliant | remarks
+  -C              |  no    | no        |
+  -T              |  no    | no        |
+  -a              |  no    | no        |
+  -b              |  no    | no        |
+  -c              |  no    | no        |
+  -d              |  no    | no        |
+  -i              |  no    | no        |
+  -m              |  no    | no        |
+  -p              |  yes   |           |
+  -q              |  no    | no        |
+  -r              |  no    | no        |
+  -s              |  no    | no        |
+  -t              |  yes   |           |
+  -u              |  no    | no        |
+  -v              |  yes   |           |
+  -x              |  yes   |           |
+ar Busybox specific options:
   -o
 
 awk POSIX options
  option           | exists | compliant | remarks
-  -F ERE          |  yes   |           |  
-  -f progfile     |  yes   |           |  
-  -v assignment   |  yes   |           |  
+  -F ERE          |  yes   |           |
+  -f progfile     |  yes   |           |
+  -v assignment   |  yes   |           |
 awk Busybox specific options: None
 
 basename POSIX options: None
 basename Busybox specific options: None
 
 cal POSIX options: None
-cal Busybox specific options: 
+cal Busybox specific options:
   -y, -j
 
 cat POSIX options
@@ -79,28 +79,28 @@ cat Busybox specific options: None
 
 chgrp POSIX options
  option           | exists | compliant | remarks
-  -H              |  yes   |           |  
-  -L              |  yes   |           |  
-  -P              |  yes   |           |  
-  -R              |  yes   |           |  
-  -h              |  yes   |           |  
-chgrp Busybox specific options: 
+  -H              |  yes   |           |
+  -L              |  yes   |           |
+  -P              |  yes   |           |
+  -R              |  yes   |           |
+  -h              |  yes   |           |
+chgrp Busybox specific options:
   -f, -c, -v
 
 chmod POSIX options
  option           | exists | compliant | remarks
-  -R              |  yes   | yes       |  
-chmod Busybox specific options: 
+  -R              |  yes   | yes       |
+chmod Busybox specific options:
   -f, -v, -c
 
-chown POSIX options
+chown POSIX options *********************************************
  option           | exists | compliant | remarks
-  -H              |  yes   |           |  
-  -L              |  yes   |           |  
-  -P              |  yes   |           |  
-  -R              |  yes   |           |  
-  -h              |  yes   |           |  
-chown Busybox specific options: 
+  -H              |  yes   |           | It seems like all flags are supported (according to printout), but
+  -L              |  yes   |           |  it fails to work on my machine
+  -P              |  yes   |           |
+  -R              |  yes   |           |
+  -h              |  yes   |           |
+chown Busybox specific options:
   -f, -c, -v
 
 cksum POSIX options: None
@@ -108,77 +108,100 @@ cksum Busybox specific options: None
 
 cmp POSIX options
  option           | exists | compliant | remarks
-  -l              |  yes   | yes       |  
-  -s              |  yes   | yes       |  
-cmp Busybox specific options: 
-  
+  -l              |  yes   | yes       |
+  -s              |  yes   | yes       |
+cmp Busybox specific options:
+
 
 comm POSIX options
  option           | exists | compliant | remarks
-  -1              |  yes   |           |  
-  -2              |  yes   |           |  
-  -3              |  yes   |           |  
+  -1              |  yes   | yes       |
+  -2              |  yes   | yes       |
+  -3              |  yes   | yes       |
 comm Busybox specific options: None
 
 cp POSIX options
  option           | exists | compliant | remarks
-  -H              |  yes   |           |  
-  -L              |  yes   |           |  
-  -P              |  yes   |           |  
-  -R              |  yes   |           |  
-  -f              |  yes   |           |  
-  -i              |  yes   |           |  
-  -p              |  yes   |           |  
-cp Busybox specific options: 
+  -H              |  yes   | yes       |
+  -L              |  yes   | yes       |
+  -P              |  yes   | yes       |
+  -R              |  yes   | yes       |
+  -f              |  yes   | yes       |
+  -i              |  yes   | yes       |
+  -p              |  yes   | yes       |
+cp Busybox specific options:
   -d, -a, -s, -c, -r, -l
 
 crontab POSIX options
  option           | exists | compliant | remarks
-  -e              |  yes   |           |  
-  -l              |  yes   |           |  
-  -r              |  yes   |           |  
-crontab Busybox specific options: 
+  -e              |  yes   |           |
+  -l              |  yes   |           |
+  -r              |  yes   |           |
+crontab Busybox specific options:
   -u, -c
 
 cut POSIX options
  option           | exists | compliant | remarks
-  -b list         |  yes   |           |  
-  -c list         |  yes   |           |  
-  -d delim        |  yes   |           |  
-  -f list         |  yes   |           |  
-  -n              |  yes   |           |  
-  -s              |  yes   |           |  
+  -b list         |  yes   | yes       |
+  -c list         |  yes   | yes       |
+  -d delim        |  yes   | yes       |
+  -f list         |  yes   | yes       |
+  -n              |  yes   | yes       |
+  -s              |  yes   | yes       |
 cut Busybox specific options: None
 
 date POSIX options
  option           | exists | compliant | remarks
-  -u              |  yes   | yes       |  
-date Busybox specific options: 
+  -u              |  yes   | yes       |
+date Busybox specific options:
   -I[SPEC], -d TIME, -r FILE, -R, -D FMT
 
-dd POSIX options: None
-dd Busybox specific options: 
-  
+dd POSIX options:
+ option           | exists | compliant | remarks
+  if              |  yes   |           |
+  of              |  yes   |           |
+  ibs             |  yes   |           |
+  obs             |  yes   |           |
+  bs              |  yes   |           |
+  cbs             |  no    | no        |
+  skip            |  yes   |           |
+  seek            |  yes   |           |
+  count           |  yes   |           |
+  conv=ascii      |  no    | no        |
+  conv=ebcdic     |  no    | no        |
+  conv=ibm        |  no    | no        |
+  conv=block      |  no    | no        |
+  conv=unblock    |  no    | no        |
+  conv=lcase      |  no    | no        |
+  conv=ucase      |  no    | no        |
+  conv=swap       |  no    | no        |
+  conv=noerror    |  yes   |           |
+  conv=notrunc    |  yes   |           |
+  conv=sync       |  yes   |           |
+dd Busybox specific options:
+ conv=fsync
 
 df POSIX options
  option           | exists | compliant | remarks
-  -P              |  yes   |           |  
-  -k              |  yes   |           |  
-  -t              |  no    | no        |  
-df Busybox specific options: 
+  -P              |  yes   | yes       |
+  -k              |  yes   | yes       |
+  -t              |  no    | no        |
+df Busybox specific options:
   -a, -m, -B SIZE, -i, -h
+Remark:
+- It seems that GNU df does not round percents up in its output (thus its results are a bit different)
 
 diff POSIX options
  option           | exists | compliant | remarks
-  -C n            |  no    | no        |  
-  -U n            |  yes   |           |  
-  -b              |  yes   |           |  
-  -c              |  no    | no        |  
-  -e              |  no    | no        |  
-  -f              |  no    | no        |  
-  -r              |  yes   |           |  
-  -u              |  no    | no        |  
-diff Busybox specific options: 
+  -C n            |  no    | no        |
+  -U n            |  yes   |           |
+  -b              |  yes   |           |
+  -c              |  no    | no        |
+  -e              |  no    | no        |
+  -f              |  no    | no        |
+  -r              |  yes   |           |
+  -u              |  no    | no        |
+diff Busybox specific options:
   -d, -a, -s, -t, -L, -N, -i, -T, -w, -q, -S
 
 dirname POSIX options: None
@@ -186,144 +209,165 @@ dirname Busybox specific options: None
 
 du POSIX options
  option           | exists | compliant | remarks
-  -H              |  yes   |           |  
-  -L              |  yes   |           |  
-  -a              |  yes   |           |  
-  -k              |  yes   |           |  
-  -s              |  yes   |           |  
-  -x              |  yes   |           |  
-du Busybox specific options: 
+  -H              |  yes   |           |
+  -L              |  yes   |           |
+  -a              |  yes   |           |
+  -k              |  yes   |           |
+  -s              |  yes   |           |
+  -x              |  yes   |           |
+du Busybox specific options:
   -c, -m, -h, -d N, -l
 
+
 echo POSIX options: None
-echo Busybox specific options: 
-  -e, -E, -n
+ option           | exists | compliant | remarks
+  -n              |  yes   | yes       | The result of -n is "implementation-defined"
+echo Busybox specific options:
+  -e, -E
 
 ed POSIX options
  option           | exists | compliant | remarks
-  -p string       |  no    | no        |  
-  -s              |  no    | no        |  
+  -p string       |  no    | no        |
+  -s              |  no    | no        |
 ed Busybox specific options: None
 
 env POSIX options
  option           | exists | compliant | remarks
-  -i              |  no    | no        |  
-env Busybox specific options: 
+  -i              |  no    | no        |
+env Busybox specific options:
   -u, -,  -i
 
 expand POSIX options
  option           | exists | compliant | remarks
-  -t tablist      |  yes   |           |  
-expand Busybox specific options: 
+  -t tablist      |  yes   | yes       |
+expand Busybox specific options:
   --tabs=N, -i, --initial
 
-expr POSIX options: None
-expr Busybox specific options: 
-  
+expr POSIX operations:
+ option           | exists | compliant | remarks
+  |               |  yes   |  yes      |
+  &               |  yes   |  yes      |
+  =               |  yes   |  yes      |
+  >               |  yes   |  yes      |
+  >=              |  yes   |  yes      |
+  <=              |  yes   |  yes      |
+  <               |  yes   |  yes      |
+  !=              |  yes   |  yes      |
+  +               |  yes   |  yes      |
+  -               |  yes   |  yes      |
+  *               |  yes   |  yes      |
+  /               |  yes   |  yes      |
+  %               |  yes   |  yes      |
+  :               |  yes   |  yes      |
+  (expr)          |  yes   |  yes      |
+  integer         |  yes   |  yes      |
+  string          |  yes   |  yes      |
+expr Busybox specific operations:
+  match, substr, index, length, quote
 
 false POSIX options: None
 false Busybox specific options: None
 
 find POSIX options
  option           | exists | compliant | remarks
-  -H              |  no    | no        |  
-  -L              |  no    | no        |  
-find Busybox specific options: 
+  -H              |  no    | no        |
+  -L              |  no    | no        |
+find Busybox specific options:
   -group NAME, -mtime DAYS, -print, -maxdepth N, -exec CMD ARG ;, -newer FILE, -context, -iname PATTERN, -follow, -depth, -xdev, -inum N, -type X, -print0, -mindepth N, -mmin MINS, -regex PATTERN, -prune, -path PATTERN, -user NAME, -delete, -perm NNN, -name PATTERN, -size N[bck]
 
 fold POSIX options
  option           | exists | compliant | remarks
-  -b              |  yes   |           |  
-  -s              |  yes   |           |  
-  -w width        |  yes   |           |  
+  -b              |  yes   | yes       |
+  -s              |  yes   | yes       |
+  -w width        |  yes   | yes       |
 fold Busybox specific options: None
 
 fuser POSIX options
  option           | exists | compliant | remarks
-  -c              |  no    | no        |  
-  -f              |  no    | no        |  
-  -u              |  no    | no        |  
-fuser Busybox specific options: 
+  -c              |  no    | no        |
+  -f              |  no    | no        |
+  -u              |  no    | no        |
+fuser Busybox specific options:
   -m, -k, -4, -SIGNAL, -6, -s
 
 grep POSIX options
  option           | exists | compliant | remarks
-  -E              |  yes   |           |  
-  -F              |  yes   |           |  
-  -c              |  yes   |           |  
-  -e pattern_list |  yes   |           |  
-  -f pattern_file |  yes   |           |  
-  -i              |  yes   |           |  
-  -l              |  yes   |           |  
-  -n              |  yes   |           |  
-  -q              |  yes   |           |  
-  -s              |  yes   |           |  
-  -v              |  yes   |           |  
-  -x              |  no    | no        |  
-grep Busybox specific options: 
+  -E              |  yes   |           |
+  -F              |  yes   |           |
+  -c              |  yes   |           |
+  -e pattern_list |  yes   |           |
+  -f pattern_file |  yes   |           |
+  -i              |  yes   |           |
+  -l              |  yes   |           |
+  -n              |  yes   |           |
+  -q              |  yes   |           |
+  -s              |  yes   |           |
+  -v              |  yes   |           |
+  -x              |  no    | no        |
+grep Busybox specific options:
   -A, -C, -B, -L, -H, -o, -h, -w, -r, -z, -m MAX
 
 head POSIX options
  option           | exists | compliant | remarks
-  -n number       |  yes   | yes       |  
-head Busybox specific options: 
+  -n number       |  yes   | yes       |
+head Busybox specific options:
   -v, -c NUM, -q
 
 id POSIX options
  option           | exists | compliant | remarks
-  -G              |  yes   |           |  
-  -g              |  yes   |           |  
-  -n              |  yes   |           |  
-  -r              |  yes   |           |  
-  -u              |  yes   |           |  
-id Busybox specific options: 
+  -G              |  yes   | yes       |
+  -g              |  yes   | yes       |
+  -n              |  yes   | yes       |
+  -r              |  yes   | yes       |
+  -u              |  yes   | yes       |
+id Busybox specific options:
   -Z
 
 ipcrm POSIX options
  option           | exists | compliant | remarks
-  -M shmkey       |  no    | no        |  
-  -Q msgkey       |  no    | no        |  
-  -S semkey       |  no    | no        |  
-  -m shmid        |  no    | no        |  
-  -q msgid        |  no    | no        |  
-  -s semid        |  no    | no        |  
-ipcrm Busybox specific options: 
+  -M shmkey       |  no    | no        |
+  -Q msgkey       |  no    | no        |
+  -S semkey       |  no    | no        |
+  -m shmid        |  no    | no        |
+  -q msgid        |  no    | no        |
+  -s semid        |  no    | no        |
+ipcrm Busybox specific options:
   -mM, -qQ, -sS
 
 ipcs POSIX options
  option           | exists | compliant | remarks
-  -a              |  yes   |           |  
-  -b              |  no    | no        |  
-  -c              |  yes   |           |  
-  -m              |  yes   |           |  
-  -o              |  no    | no        |  
-  -p              |  yes   |           |  
-  -q              |  yes   |           |  
-  -s              |  yes   |           |  
-  -t              |  yes   |           |  
-ipcs Busybox specific options: 
+  -a              |  yes   |           |
+  -b              |  no    | no        |
+  -c              |  yes   |           |
+  -m              |  yes   |           |
+  -o              |  no    | no        |
+  -p              |  yes   |           |
+  -q              |  yes   |           |
+  -s              |  yes   |           |
+  -t              |  yes   |           |
+ipcs Busybox specific options:
   -l, -i, -u
 
 kill POSIX options
  option           | exists | compliant | remarks
-  -l              |  yes   | yes       |  
-  -s signal_name  |  yes   | yes       |  
-  -signal_name    |  yes   | yes       |  
-  -signal_number  |  yes   | yes       |  
-kill Busybox specific options: 
+  -l              |  yes   | yes       |
+  -s signal_name  |  yes   | yes       |
+  -signal_name    |  yes   | yes       |
+  -signal_number  |  yes   | yes       |
+kill Busybox specific options:
    -q, -o
 
 ln POSIX options
  option           | exists | compliant | remarks
-  -L              |  no    | no        |  
-  -P              |  no    | no        |  
-  -f              |  yes   |           |  
-  -s              |  yes   |           |  
-ln Busybox specific options: 
+  -L              |  no    | no        |
+  -P              |  no    | no        |
+  -f              |  yes   | yes       |
+  -s              |  yes   | yes       |
+ln Busybox specific options:
   -S suf, -n, -b
 
 logger POSIX options: None
-logger Busybox specific options: 
+logger Busybox specific options:
   -p PRIO, -t TAG, -s
 
 logname POSIX options: None
@@ -331,39 +375,39 @@ logname Busybox specific options: None
 
 ls POSIX options
  option           | exists | compliant | remarks
-  -1              |  yes   |           |  
-  -A              |  yes   |           |  
-  -C              |  yes   |           |  
-  -F              |  yes   |           |  
-  -H              |  no    | no        |  
-  -L              |  yes   |           |  
-  -R              |  yes   |           |  
-  -S              |  yes   |           |  
-  -a              |  yes   |           |  
-  -c              |  yes   |           |  
-  -d              |  yes   |           |  
-  -f              |  no    | no        |  
-  -g              |  no    | no        |  
-  -i              |  yes   |           |  
-  -k              |  yes   |           |  
-  -l              |  yes   |           |  
-  -m              |  no    | no        |  
-  -n              |  yes   |           |  
-  -o              |  no    | no        |  
-  -p              |  yes   |           |  
-  -q              |  no    | no        |  
-  -r              |  yes   |           |  
-  -s              |  yes   |           |  
-  -t              |  yes   |           |  
-  -u              |  yes   |           |  
-  -x              |  yes   |           |  
-ls Busybox specific options: 
+  -1              |  yes   | yes       |
+  -A              |  yes   | yes       |
+  -C              |  yes   | yes       |
+  -F              |  yes   | yes       | And more: '=' for sockets (not defined by POSIX)
+  -H              |  no    | no        |
+  -L              |  yes   | yes       | But coloring may be wrong (at least POSIX does not require correct colors :) )
+  -R              |  yes   | yes       |
+  -S              |  yes   | yes       |
+  -a              |  yes   | yes       |
+  -c              |  yes   | no        | Sorts output with '-l' (should only show ctime with '-l', and sort only with '-t')
+  -d              |  yes   | no        | When invoked together with '-L' should read symbolic links, and doesn't
+  -f              |  no    | no        |
+  -g              |  no    | no        |
+  -i              |  yes   | yes       |
+  -k              |  yes   | no        | Does something completely unrelated! (Lists security context instead of specifying block size)
+  -l              |  yes   | yes       |
+  -m              |  no    | no        |
+  -n              |  yes   | no        | Works correctly only together with '-l' (but POSIX requires '-l' to be implicitly assumed)
+  -o              |  no    | no        |
+  -p              |  yes   | yes       |
+  -q              |  no    | no        |
+  -r              |  yes   | yes       |
+  -s              |  yes   | yes       |
+  -t              |  yes   | yes       |
+  -u              |  yes   | yes       |
+  -x              |  yes   | yes       |
+ls Busybox specific options:
   --color, -T NUM, -K, -X, -Z, -e, -h, -v, -w NUM
 
 man POSIX options
  option           | exists | compliant | remarks
-  -k              |  no    | no        |  
-man Busybox specific options: 
+  -k              |  no    | no        |
+man Busybox specific options:
   -a      Display all pages
 
 
@@ -372,38 +416,38 @@ mesg Busybox specific options: None
 
 mkdir POSIX options
  option           | exists | compliant | remarks
-  -m mode         |  yes   |           |  
-  -p              |  yes   |           |  
-mkdir Busybox specific options: 
+  -m mode         |  yes   | yes       |
+  -p              |  yes   | yes       |
+mkdir Busybox specific options:
   -Z
 
 mkfifo POSIX options
  option           | exists | compliant | remarks
-  -m mode         |  yes   | yes       |  
-mkfifo Busybox specific options: 
+  -m mode         |  yes   | yes       |
+mkfifo Busybox specific options:
   -Z
 
 more POSIX options
  option           | exists | compliant | remarks
-  -c              |  no    | no        |  
-  -e              |  no    | no        |  
-  -i              |  no    | no        |  
-  -n number       |  no    | no        |  
-  -p command      |  no    | no        |  
-  -s              |  no    | no        |  
-  -t tagstring    |  no    | no        |  
-  -u              |  no    | no        |  
+  -c              |  no    | no        |
+  -e              |  no    | no        |
+  -i              |  no    | no        |
+  -n number       |  no    | no        |
+  -p command      |  no    | no        |
+  -s              |  no    | no        |
+  -t tagstring    |  no    | no        |
+  -u              |  no    | no        |
 more Busybox specific options: None
 
 mv POSIX options
  option           | exists | compliant | remarks
-  -f              |  yes   |           |  
-  -i              |  yes   |           |  
+  -f              |  yes   | yes       |
+  -i              |  yes   | yes       |
 mv Busybox specific options: None
 
 nice POSIX options
  option           | exists | compliant | remarks
-  -n increment    |  yes   |           |  
+  -n increment    |  yes   | yes       |
 nice Busybox specific options: None
 
 nohup POSIX options: None
@@ -411,35 +455,35 @@ nohup Busybox specific options: None
 
 od POSIX options
  option           | exists | compliant | remarks
-  -A address_base |  no    | no        |  
-  -N count        |  no    | no        |  
-  -b              |  no    | no        |  
-  -c              |  no    | no        |  
-  -d              |  no    | no        |  
-  -j skip         |  no    | no        |  
-  -o              |  no    | no        |  
-  -s              |  no    | no        |  
-  -t type_string  |  no    | no        |  
-  -v              |  no    | no        |  
-  -x              |  no    | no        |  
+  -A address_base |  no    | no        |
+  -N count        |  no    | no        |
+  -b              |  no    | no        |
+  -c              |  no    | no        |
+  -d              |  no    | no        |
+  -j skip         |  no    | no        |
+  -o              |  no    | no        |
+  -s              |  no    | no        |
+  -t type_string  |  no    | no        |
+  -v              |  no    | no        |
+  -x              |  no    | no        |
 od Busybox specific options: None
 
 patch POSIX options
  option           | exists | compliant | remarks
-  -D define       |  no    | no        |  
-  -N              |  no    | no        |  
-  -R              |  yes   |           |  
-  -b              |  no    | no        |  
-  -c              |  no    | no        |  
-  -d dir          |  no    | no        |  
-  -e              |  no    | no        |  
-  -i patchfile    |  yes   |           |  
-  -l              |  no    | no        |  
-  -n              |  no    | no        |  
-  -o outfile      |  no    | no        |  
-  -p num          |  yes   |           |  
-  -r rejectfile   |  no    | no        |  
-  -u              |  no    | no        |  
+  -D define       |  no    | no        |
+  -N              |  no    | no        |
+  -R              |  yes   | yes       |
+  -b              |  no    | no        |
+  -c              |  no    | no        |
+  -d dir          |  no    | no        |
+  -e              |  no    | no        |
+  -i patchfile    |  yes   | yes       |
+  -l              |  no    | no        |
+  -n              |  no    | no        |
+  -o outfile      |  no    | no        |
+  -p num          |  yes   | yes       |
+  -r rejectfile   |  no    | no        |
+  -u              |  no    | no        |
 patch Busybox specific options: None
 
 printf POSIX options: None
@@ -447,63 +491,63 @@ printf Busybox specific options: None
 
 ps POSIX options
  option           | exists | compliant | remarks
-  -A              |  no    | no        |  
-  -G grouplist    |  no    | no        |  
-  -U userlist     |  no    | no        |  
-  -a              |  no    | no        |  
-  -d              |  no    | no        |  
-  -e              |  no    | no        |  
-  -f              |  no    | no        |  
-  -g grouplist    |  no    | no        |  
-  -l              |  no    | no        |  
-  -n namelist     |  no    | no        |  
+  -A              |  no    | no        |
+  -G grouplist    |  no    | no        |
+  -U userlist     |  no    | no        |
+  -a              |  no    | no        |
+  -d              |  no    | no        |
+  -e              |  no    | no        |
+  -f              |  no    | no        |
+  -g grouplist    |  no    | no        |
+  -l              |  no    | no        |
+  -n namelist     |  no    | no        |
   -o format       |  yes   | no        | not supported: ruser, group, rgroup, pcpu
-  -p proclist     |  no    | no        | 
-  -t termlist     |  no    | no        |  
-  -u userlist     |  no    | no        |  
+  -p proclist     |  no    | no        |
+  -t termlist     |  no    | no        |
+  -u userlist     |  no    | no        |
 ps Busybox specific options: None
 
 pwd POSIX options
  option           | exists | compliant | remarks
-  -L              |  no    | no        |  
-  -P              |  no    | no        |  
+  -L              |  no    | no        |
+  -P              |  no    | no        |
 pwd Busybox specific options: None
 
 renice POSIX options
  option           | exists | compliant | remarks
-  -g              |  yes   |           |  
-  -n increment    |  yes   |           |  
-  -p              |  yes   |           |  
-  -u              |  yes   |           |  
+  -g              |  yes   | yes       |
+  -n increment    |  yes   | yes       | Note POSIX allows only to run with this option (busybox also allows to run without '-n' and set niceness directly)
+  -p              |  yes   | yes       |
+  -u              |  yes   | yes       |
 renice Busybox specific options: None
 
 rm POSIX options
  option           | exists | compliant | remarks
-  -R              |  yes   |           |  
-  -f              |  yes   |           |  
-  -i              |  yes   |           |  
-  -r              |  yes   |           |  
+  -R              |  yes   | yes       |
+  -f              |  yes   | yes       |
+  -i              |  yes   | yes       |
+  -r              |  yes   | yes       |
 rm Busybox specific options: None
 
 rmdir POSIX options
  option           | exists | compliant | remarks
-  -p              |  yes   |           |  
-rmdir Busybox specific options: 
+  -p              |  yes   | yes       |
+rmdir Busybox specific options:
   --parents
 
 sed POSIX options
  option           | exists | compliant | remarks
-  -e script       |  yes   |           |  
-  -f script_file  |  yes   |           |  
-  -n              |  yes   |           |  
-sed Busybox specific options: 
+  -e script       |  yes   |           |
+  -f script_file  |  yes   |           |
+  -n              |  yes   |           |
+sed Busybox specific options:
   -i, -r
 
 sh POSIX options
  option           | exists | compliant | remarks
-  -c              |  no    | no        |  
-  -i              |  no    | no        |  
-  -s              |  no    | no        |  
+  -c              |  no    | no        |
+  -i              |  no    | no        |
+  -s              |  no    | no        |
 sh Busybox specific options: None
 
 sleep POSIX options: None
@@ -511,58 +555,58 @@ sleep Busybox specific options: None
 
 sort POSIX options
  option           | exists | compliant | remarks
-  -C              |  no    | no        |  
-  -b              |  yes   |           |  
-  -c              |  yes   |           |  
-  -d              |  yes   |           |  
-  -f              |  yes   |           |  
-  -i              |  yes   |           |  
-  -k keydef       |  yes   |           |  
-  -m              |  no    | no        |  
-  -n              |  yes   |           |  
-  -o output       |  yes   |           |  
-  -r              |  yes   |           |  
-  -t char         |  yes   |           |  
-  -u              |  yes   |           |  
-sort Busybox specific options: 
+  -C              |  no    | no        |
+  -b              |  yes   | yes       |
+  -c              |  yes   | yes       |
+  -d              |  yes   | yes       |
+  -f              |  yes   | yes       |
+  -i              |  yes   | yes       | But is not like GNU sort, which isn't! (try to sort 'a\nA\nB\nb' with and without -f)
+  -k keydef       |  yes   |           |
+  -m              |  no    | no        |
+  -n              |  yes   | yes       |
+  -o output       |  yes   | yes       |
+  -r              |  yes   | yes       |
+  -t char         |  yes   |           |
+  -u              |  yes   | yes       |
+sort Busybox specific options:
   -mST, -g, -M, -s, -z
 
 split POSIX options
  option           | exists | compliant | remarks
-  -a suffix_length |  yes   |           |  
-  -b n            |  yes   |           |  
-  -b nk           |  yes   |           |  
-  -b nm           |  yes   |           |  
-  -l line_count   |  yes   |           |  
+  -a suffix_length |  yes   | yes       |
+  -b n            |  yes   | yes       |
+  -b nk           |  yes   | yes       |
+  -b nm           |  yes   | yes       |
+  -l line_count   |  yes   | yes       |
 split Busybox specific options: None
 
 strings POSIX options
  option           | exists | compliant | remarks
-  -a              |  yes   |           |  
-  -n number       |  yes   |           |  
-  -t format       |  no    | no        |  
-strings Busybox specific options: 
+  -a              |  yes   | yes       |
+  -n number       |  yes   | yes       |
+  -t format       |  no    | no        |
+strings Busybox specific options:
   -o, -f
 
 stty POSIX options
  option           | exists | compliant | remarks
-  -a              |  yes   |           |  
-  -g              |  yes   |           |  
-stty Busybox specific options: 
+  -a              |  yes   | yes       |
+  -g              |  yes   | yes       |
+stty Busybox specific options:
   -F DEVICE
 
 tail POSIX options
  option           | exists | compliant | remarks
-  -c number       |  yes   | yes       |  
-  -f              |  yes   | yes       |  
-  -n number       |  yes   | yes       |  
-tail Busybox specific options: 
+  -c number       |  yes   | yes       |
+  -f              |  yes   | yes       |
+  -n number       |  yes   | yes       |
+tail Busybox specific options:
   -v, -q, -s SEC
 
 tee POSIX options
  option           | exists | compliant | remarks
-  -a              |  yes   |           |  
-  -i              |  yes   |           |  
+  -a              |  yes   | yes       |
+  -i              |  yes   | yes       |
 tee Busybox specific options: None
 
 test POSIX options: None
@@ -570,127 +614,127 @@ test Busybox specific options: None
 
 time POSIX options
  option           | exists | compliant | remarks
-  -p              |  no    | no        |  
-time Busybox specific options: 
+  -p              |  no    | no        |
+time Busybox specific options:
   -v
 
 touch POSIX options
  option           | exists | compliant | remarks
-  -a              |  no    | no        |  
-  -c              |  yes   |           |  
-  -d date_time    |  no    | no        |  
-  -m              |  no    | no        |  
-  -r ref_file     |  no    | no        |  
-  -t time         |  no    | no        |  
+  -a              |  no    | no        |
+  -c              |  yes   | yes       |
+  -d date_time    |  no    | no        |
+  -m              |  no    | no        |
+  -r ref_file     |  no    | no        |
+  -t time         |  no    | no        |
 touch Busybox specific options: None
 
 tr POSIX options
  option           | exists | compliant | remarks
-  -C              |  no    | no        |  
-  -c              |  yes   |           |  
-  -d              |  yes   |           |  
-  -s              |  yes   |           |  
+  -C              |  no    | no        |
+  -c              |  yes   | yes       |
+  -d              |  yes   | yes       |
+  -s              |  yes   | yes       |
 tr Busybox specific options: None
 
 true POSIX options: None
 true Busybox specific options: None
 
 tty POSIX options: None
-tty Busybox specific options: 
+tty Busybox specific options:
   -s
 
 uname POSIX options
  option           | exists | compliant | remarks
-  -a              |  yes   |           |  
-  -m              |  yes   |           |  
-  -n              |  yes   |           |  
-  -r              |  yes   |           |  
-  -s              |  yes   |           |  
-  -v              |  yes   |           |  
-uname Busybox specific options: 
+  -a              |  yes   | yes       |
+  -m              |  yes   | yes       |
+  -n              |  yes   | yes       |
+  -r              |  yes   | yes       |
+  -s              |  yes   | yes       |
+  -v              |  yes   | yes       |
+uname Busybox specific options:
   -p
 
 uncompress POSIX options
  option           | exists | compliant | remarks
-  -c              |  yes   |           |  
-  -f              |  yes   |           |  
-  -v              |  no    | no        |  
+  -c              |  yes   | yes       |
+  -f              |  yes   | yes       |
+  -v              |  no    | no        |
 uncompress Busybox specific options: None
 
 unexpand POSIX options
  option           | exists | compliant | remarks
-  -a              |  yes   |           |  
-  -t tablist      |  yes   |           |  
-unexpand Busybox specific options: 
+  -a              |  yes   | no        | POSIX requires converting two or more spaces to tabs, busybox converts one or more spaces
+  -t tablist      |  yes   | yes       |
+unexpand Busybox specific options:
   --tabs=N, -f, --first-only, --all
 
 uniq POSIX options
  option           | exists | compliant | remarks
-  -c              |  yes   |           |  
-  -d              |  yes   |           |  
-  -f fields       |  yes   |           |  
-  -s chars        |  yes   |           |  
-  -u              |  yes   |           |  
-uniq Busybox specific options: 
+  -c              |  yes   | yes       |
+  -d              |  yes   | yes       |
+  -f fields       |  yes   | yes       |
+  -s chars        |  yes   | yes       |
+  -u              |  yes   | yes       |
+uniq Busybox specific options:
   -w N
 
 uudecode POSIX options
  option           | exists | compliant | remarks
-  -o outfile      |  no    | no        |  
+  -o outfile      |  no    | no        |
 uudecode Busybox specific options: None
 
 uuencode POSIX options
  option           | exists | compliant | remarks
-  -m              |  yes   |           |  
+  -m              |  yes   | yes       |
 uuencode Busybox specific options: None
 
 vi POSIX options
  option           | exists | compliant | remarks
-  -R              |  yes   |           |  
-  -c command      |  yes   |           |  
-  -r              |  no    | no        |  
-  -t tagstring    |  no    | no        |  
-  -w size         |  no    | no        |  
-vi Busybox specific options: 
+  -R              |  yes   |           |
+  -c command      |  yes   |           |
+  -r              |  no    | no        |
+  -t tagstring    |  no    | no        |
+  -w size         |  no    | no        |
+vi Busybox specific options:
   -H
 
 wc POSIX options
  option           | exists | compliant | remarks
-  -c              |  yes   |           |  
-  -l              |  yes   |           |  
-  -m              |  no    | no        |  
-  -w              |  yes   |           |  
-wc Busybox specific options: 
+  -c              |  yes   | yes       |
+  -l              |  yes   | yes       |
+  -m              |  no    | no        |
+  -w              |  yes   | yes       |
+wc Busybox specific options:
   -L
 
 who POSIX options
  option           | exists | compliant | remarks
-  -H              |  no    | no        |  
-  -T              |  no    | no        |  
-  -a              |  yes   |           |  
-  -b              |  no    | no        |  
-  -d              |  no    | no        |  
-  -l              |  no    | no        |  
-  -m              |  no    | no        |  
-  -p              |  no    | no        |  
-  -q              |  no    | no        |  
-  -r              |  no    | no        |  
-  -s              |  no    | no        |  
-  -t              |  no    | no        |  
-  -u              |  no    | no        |  
+  -H              |  no    | no        |
+  -T              |  no    | no        |
+  -a              |  yes   | no        | just shows all
+  -b              |  no    | no        |
+  -d              |  no    | no        |
+  -l              |  no    | no        |
+  -m              |  no    | no        |
+  -p              |  no    | no        |
+  -q              |  no    | no        |
+  -r              |  no    | no        |
+  -s              |  no    | no        |
+  -t              |  no    | no        |
+  -u              |  no    | no        |
 who Busybox specific options: None
 
 xargs POSIX options
  option           | exists | compliant | remarks
-  -E eofstr       |  no    | no        |  
-  -I replstr      |  no    | no        |  
-  -L number       |  no    | no        |  
-  -n number       |  yes   |           |  
-  -p              |  yes   |           |  
-  -s size         |  yes   |           |  
-  -t              |  yes   |           |  
-  -x              |  yes   |           |  
-xargs Busybox specific options: 
+  -E eofstr       |  no    | no        |
+  -I replstr      |  no    | no        |
+  -L number       |  no    | no        |
+  -n number       |  yes   | yes       |
+  -p              |  yes   | yes       |
+  -s size         |  yes   | yes       |
+  -t              |  yes   | yes       |
+  -x              |  yes   | yes       |
+xargs Busybox specific options:
   -e[STR], -0, -r
 
 zcat POSIX options: None