Results for sh-usage.test.sh

statusbashdashmkshzshosh
pass 151191316
ok 01101
N-I 25630
BUG-2 00100
BUG 00010
total1717171717
casebashdashmkshzshoshdescription
0pass pass pass pass pass sh -c
1pass pass pass pass pass empty -c input
2pass pass N-I pass pass sh +c is accepted
details
3pass pass pass pass pass empty stdin
4pass pass BUG-2 BUG ok sh - and sh -- stop flag processing
detailsdetailsdetails
5pass N-I N-I pass pass shell obeys --help (regression for OSH)
detailsdetails
6pass pass pass pass pass args are passed
7pass pass pass pass pass args that look like flags are passed after script
8pass pass pass pass pass args that look like flags are passed after -c
9pass pass pass pass pass exit with explicit arg
10pass pass pass pass pass exit with no args
11N-I N-I N-I N-I pass --rcfile in non-interactive shell prints warnings
detailsdetailsdetailsdetails
12pass pass pass pass pass accepts -l flag
13pass ok ok pass pass accepts --login flag (dash and mksh don't accept long flags)
detailsdetails
14N-I N-I N-I N-I pass osh --eval
detailsdetailsdetailsdetails
15pass N-I N-I pass pass Set LC_ALL LC_CTYPE LC_COLLATE LANG - affects glob ?
detailsdetails
16pass N-I N-I N-I pass LC_CTYPE=invalid
detailsdetailsdetails
64 passed, 3 OK, 16 not implemented, 2 BUG, 0 failed, 0 timeouts, 0 cases skipped

Details on runs that didn't PASS

mksh2 sh +c is accepted

stdout:
stderr: 
mksh: echo hi: No such file or directory
mksh4 sh - and sh -- stop flag processing

stdout:
foo
-
foo
stderr:
echo foo
+ echo foo
-
zsh4 sh - and sh -- stop flag processing

stdout:
stderr: 
osh4 sh - and sh -- stop flag processing

stdout:
foo
-
foo
stderr:
+ echo foo
-
+ echo foo
dash5 shell obeys --help (regression for OSH)

stdout:
stderr: 
dash: 0: Illegal option --
mksh5 shell obeys --help (regression for OSH)

stdout:
stderr: 
mksh: mksh: --: unknown option
bash11 --rcfile in non-interactive shell prints warnings

stdout:
rc
==> interactive.txt <==
bash: cannot set terminal process group (8071): Inappropriate ioctl for device
bash: no job control in this shell
bash-5.2$ exit

==> non-interactive.txt <==
stderr:
warned=1
warned=1
dash11 --rcfile in non-interactive shell prints warnings

stdout:
==> interactive.txt <==
dash: 0: Illegal option --

==> non-interactive.txt <==
dash: 0: Illegal option --
stderr:
warned=1
warned=1
mksh11 --rcfile in non-interactive shell prints warnings

stdout:
==> interactive.txt <==
mksh: mksh: --: unknown option

==> non-interactive.txt <==
mksh: mksh: --: unknown option
stderr:
warned=1
warned=1
zsh11 --rcfile in non-interactive shell prints warnings

stdout:
==> interactive.txt <==
zsh: no such option: rcfile

==> non-interactive.txt <==
zsh: no such option: rcfile
stderr:
warned=1
warned=1
dash13 accepts --login flag (dash and mksh don't accept long flags)

stdout:
stderr: 
dash: 0: Illegal option --
mksh13 accepts --login flag (dash and mksh don't accept long flags)

stdout:
stderr: 
mksh: mksh: --: unknown option
bash14 osh --eval

stdout:
stderr: 
dash14 osh --eval

stdout:
stderr: 
mksh14 osh --eval

stdout:
stderr: 
zsh14 osh --eval

stdout:
stderr: 
dash15 Set LC_ALL LC_CTYPE LC_COLLATE LANG - affects glob ?

stdout:
LC_ALL _x_
LC_ALL _x_

LC_CTYPE _x_
LC_CTYPE _x_

LC_COLLATE _x_
LC_COLLATE _x_

LANG _x_
LANG _x_
stderr:
mksh15 Set LC_ALL LC_CTYPE LC_COLLATE LANG - affects glob ?

stdout:
LC_ALL _x_
LC_ALL _x_

LC_CTYPE _x_
LC_CTYPE _x_

LC_COLLATE _x_
LC_COLLATE _x_

LANG _x_
LANG _x_
stderr:
dash16 LC_CTYPE=invalid

stdout:
LC_CTYPE _x_
0 err.txt
stderr:
mksh16 LC_CTYPE=invalid

stdout:
LC_CTYPE _x_
0 err.txt
stderr:
zsh16 LC_CTYPE=invalid

stdout:
LC_CTYPE _x_
0 err.txt
stderr: