PASSING - Shell Compatibility

Back to TOP.html.

name bash mksh ksh toysh sush brush osh
TOTAL 2,141 1,417 1,453 809 1,302 1,528 2,237
alias 47 42 41 3 32 21 43
append 15 12 12 4 10 8 19
arith 62 51 52 39 59 58 70
arith-context 13 8 9 6 10 6 14
arith-dynamic 4 1 1 3 4 3 1
array 63 41 45 8 46 47 76
array-assign 9 7 7 1 7 1 1
array-assoc 34 7 7 0 11 27 38
array-basic 5 5 5 0 4 5 5
array-compat 12 9 9 0 10 9 7
array-literal 4 0 0 0 2 3 8
array-sparse 21 6 7 0 8 15 38
assign 36 33 34 20 22 35 44
assign-deferred 8 6 6 2 4 4 2
assign-dialects 1 1 1 0 1 2 1
assign-extended 23 7 8 1 6 18 36
background 23 20 21 9 13 9 23
ble-features 9 2 3 0 2 6 5
ble-idioms 24 10 11 1 15 14 25
ble-unset 0 4 1 2 2 0 3
blog1 8 6 7 0 2 4 5
blog2 8 7 8 7 2 7 8
brace-expansion 46 32 32 38 42 28 50
bugs 21 17 17 12 16 17 26
builtin-bash 13 0 0 1 0 10 9
builtin-bind 9 0 0 0 1 1 2
builtin-bracket 49 45 48 40 44 42 52
builtin-cd 26 18 18 14 17 22 23
builtin-completion 42 1 1 0 16 32 48
builtin-dirs 16 0 0 0 0 16 16
builtin-echo 27 20 21 14 22 23 27
builtin-eval-source 19 12 13 9 15 14 22
builtin-getopts 22 17 17 0 13 7 21
builtin-history 0 0 0 0 0 0 8
builtin-kill 2 1 2 0 0 0 0
builtin-meta 15 13 12 1 6 11 17
builtin-meta-assign 6 5 5 0 0 4 11
builtin-misc 3 3 3 2 2 3 7
builtin-printf 52 33 35 33 12 34 41
builtin-process 21 19 19 6 8 17 26
builtin-read 41 28 29 0 19 31 44
builtin-special 6 9 10 4 3 7 10
builtin-times 1 1 1 0 0 1 1
builtin-trap 22 18 19 0 13 8 20
builtin-trap-bash 22 1 1 0 1 1 16
builtin-trap-err 20 14 15 3 3 3 20
builtin-type 3 2 2 0 1 1 6
builtin-type-bash 28 5 5 0 10 29 27
builtin-vars 35 25 25 19 21 25 37
case_ 13 11 12 4 11 10 11
command_ 12 12 12 9 10 11 14
command-parsing 4 5 5 4 4 4 2
command-sub 29 27 27 13 28 15 30
command-sub-ksh 0 4 4 0 0 0 0
comments 2 2 2 2 2 2 2
dbracket 49 36 36 17 36 40 50
divergence 2 1 1 1 1 1 0
dparen 13 10 10 3 9 9 14
empty-bodies 1 2 2 3 3 3 3
errexit 34 35 35 13 12 14 35
errexit-osh 15 10 11 11 13 13 35
exit-status 7 7 7 6 6 4 8
explore-parsing 4 5 5 3 3 4 5
extglob-files 22 18 18 2 14 19 18
extglob-match 29 22 26 1 23 28 25
fatal-errors 0 5 5 0 0 3 5
for-expr 8 0 0 0 3 4 9
func-parsing 12 9 9 14 8 12 14
glob 38 26 28 16 29 29 36
globignore 14 0 0 0 0 0 0
globstar 4 1 1 0 4 1 1
here-doc 33 32 32 22 23 31 31
if_ 5 5 5 4 5 5 5
interactive 0 0 0 0 0 2 18
introspect 12 1 1 1 2 4 13
let 2 1 1 0 2 1 0
loop 23 23 24 16 15 15 29
nameref 25 13 13 2 2 3 25
nix-idioms 6 1 0 0 1 3 5
nocasematch-match 6 3 3 3 3 6 6
nul-bytes 15 13 13 1 1 2 10
osh-bugs 0 0 0 0 0 0 2
parse-errors 21 7 7 21 14 12 24
pipeline 24 21 20 12 23 23 24
posix 15 13 13 7 13 14 15
process-sub 5 0 0 2 3 5 9
prompt 31 6 0 0 0 19 25
quote 32 26 26 32 31 27 34
redirect 34 29 29 18 22 26 35
redirect-command 21 20 20 19 17 19 22
redirect-multi 11 4 3 8 9 9 13
redir-order 4 4 4 2 4 3 3
regex 35 6 6 11 23 30 37
serialize 7 4 4 0 3 6 7
sh-func 11 11 11 11 9 10 11
sh-options 35 21 21 9 13 29 43
sh-options-bash 7 1 1 1 1 6 5
sh-usage 12 9 9 7 8 9 14
smoke 18 18 18 16 18 17 18
subshell 2 2 2 2 2 2 2
temp-binding 3 0 1 0 0 3 2
tilde 12 12 12 3 8 5 13
toysh 8 1 3 3 6 5 4
toysh-posix 18 19 19 12 14 15 16
type-compat 4 1 1 1 0 2 2
unicode 7 3 3 0 0 2 7
var-num 6 6 6 7 6 7 7
var-op-bash 22 4 3 10 8 19 18
var-op-len 5 3 4 2 4 2 8
var-op-patsub 27 19 20 12 15 20 26
var-op-slice 20 5 8 6 13 13 20
var-op-strip 29 20 25 12 21 24 29
var-op-test 35 27 28 10 19 22 34
var-ref 26 2 3 5 17 20 31
vars-bash 1 0 0 0 0 1 0
vars-special 38 21 21 20 25 26 38
var-sub 5 4 4 2 5 5 6
var-sub-quote 38 37 37 13 35 24 39
whitespace 5 3 3 1 3 3 3
word-eval 8 8 8 5 8 7 8
word-split 47 46 47 29 45 33 45
xtrace 11 7 7 3 3 12 15
zsh-assoc 3 1 1 0 1 3 2
zsh-idioms 3 2 2 2 3 2 3

Generated by test/spec-compat.sh.

Raw TSV