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 This listing is a work in progress, and currently only covers tool options (not operands, enviroment 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 required to do. ----------------------------------------------- POSIX Tools supported only as shell built-ins (ash shell): 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, tsort, unlink, uucp, uustat, uux POSIX Tools not supported (DEVELOPMENT): 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, 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: -o awk POSIX options option | exists | compliant | remarks -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: -y, -j cat POSIX options option | exists | compliant | remarks -u | yes | no | option is ignored 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: -f, -c, -v chmod POSIX options option | exists | compliant | remarks -R | yes | yes | chmod Busybox specific options: -f, -v, -c chown POSIX options option | exists | compliant | remarks -H | yes | | -L | yes | | -P | yes | | -R | yes | | -h | yes | | chown Busybox specific options: -f, -c, -v cksum POSIX options: None cksum Busybox specific options: None cmp POSIX options option | exists | compliant | remarks -l | yes | yes | -s | yes | yes | cmp Busybox specific options: comm POSIX options option | exists | compliant | remarks -1 | yes | | -2 | yes | | -3 | 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: -d, -a, -s, -c, -r, -l crontab POSIX options option | exists | compliant | remarks -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 | | cut Busybox specific options: None date POSIX options option | exists | compliant | remarks -u | yes | yes | date Busybox specific options: -I[SPEC], -d TIME, -r FILE, -R, -D FMT dd POSIX options: None dd Busybox specific options: df POSIX options option | exists | compliant | remarks -P | yes | | -k | yes | | -t | no | no | df Busybox specific options: -a, -m, -B SIZE, -i, -h 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: -d, -a, -s, -t, -L, -N, -i, -T, -w, -q, -S dirname POSIX options: None 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: -c, -m, -h, -d N, -l echo POSIX options: None echo Busybox specific options: -e, -E, -n ed POSIX options option | exists | compliant | remarks -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: -u, -, -i expand POSIX options option | exists | compliant | remarks -t tablist | yes | | expand Busybox specific options: --tabs=N, -i, --initial expr POSIX options: None expr Busybox specific options: 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: -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 | | 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: -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: -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: -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: -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: -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: -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: -q, -o ln POSIX options option | exists | compliant | remarks -L | no | no | -P | no | no | -f | yes | | -s | yes | | ln Busybox specific options: -S suf, -n, -b logger POSIX options: None logger Busybox specific options: -p PRIO, -t TAG, -s logname POSIX options: None 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: --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: -a Display all pages mesg POSIX options: None mesg Busybox specific options: None mkdir POSIX options option | exists | compliant | remarks -m mode | yes | | -p | yes | | mkdir Busybox specific options: -Z mkfifo POSIX options option | exists | compliant | remarks -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 | more Busybox specific options: None mv POSIX options option | exists | compliant | remarks -f | yes | | -i | yes | | mv Busybox specific options: None nice POSIX options option | exists | compliant | remarks -n increment | yes | | nice Busybox specific options: None nohup POSIX options: None 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 | 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 | patch Busybox specific options: None printf POSIX options: None 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 | -o format | yes | no | not supported: ruser, group, rgroup, pcpu -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 | pwd Busybox specific options: None renice POSIX options option | exists | compliant | remarks -g | yes | | -n increment | yes | | -p | yes | | -u | yes | | renice Busybox specific options: None rm POSIX options option | exists | compliant | remarks -R | yes | | -f | yes | | -i | yes | | -r | yes | | rm Busybox specific options: None rmdir POSIX options option | exists | compliant | remarks -p | 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: -i, -r sh POSIX options option | exists | compliant | remarks -c | no | no | -i | no | no | -s | no | no | sh Busybox specific options: None sleep POSIX options: None 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: -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 | | 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: -o, -f stty POSIX options option | exists | compliant | remarks -a | yes | | -g | 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: -v, -q, -s SEC tee POSIX options option | exists | compliant | remarks -a | yes | | -i | yes | | tee Busybox specific options: None test POSIX options: None test Busybox specific options: None time POSIX options option | exists | compliant | remarks -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 | touch Busybox specific options: None tr POSIX options option | exists | compliant | remarks -C | no | no | -c | yes | | -d | yes | | -s | yes | | tr Busybox specific options: None true POSIX options: None true Busybox specific options: None tty POSIX options: None 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: -p uncompress POSIX options option | exists | compliant | remarks -c | yes | | -f | 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: --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: -w N uudecode POSIX options option | exists | compliant | remarks -o outfile | no | no | uudecode Busybox specific options: None uuencode POSIX options option | exists | compliant | remarks -m | 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: -H wc POSIX options option | exists | compliant | remarks -c | yes | | -l | yes | | -m | no | no | -w | 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 | 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[STR], -0, -r zcat POSIX options: None zcat Busybox specific options: None