| case | dash | bash | mksh | zsh | osh | description |
| 0 | pass | pass | pass | pass | pass | Brace group in pipeline |
| 1 | pass | pass | pass | pass | pass | For loop in pipeline |
| 2 | pass | pass | pass | BUG | pass | Redirect in Pipeline |
| details | ||||||
| 3 | pass | pass | pass | pass | pass | Exit code is last status |
| 4 | N-I | pass | pass | N-I | pass | PIPESTATUS |
| details | details | |||||
| 5 | N-I | pass | N-I | pass | FAIL | |& |
| details | details | details | ||||
| 6 | pass | pass | pass | pass | pass | ! turns non-zero into zero |
| 7 | pass | pass | pass | pass | pass | ! turns zero into 1 |
| 8 | pass | pass | pass | pass | pass | ! in if |
| 9 | pass | pass | pass | pass | pass | ! with || |
| 10 | pass | pass | pass | pass | pass | ! with { } |
| 11 | pass | pass | pass | pass | pass | ! with ( ) |
| 12 | pass | pass | pass | pass | pass | ! is not a command |
| 13 | pass | pass | pass | BUG | pass | Evaluation of argv[0] in pipeline occurs in child |
| details |
63 passed, 0 ok, 4 known unimplemented, 2 known bugs, 1 failed, 0 skipped
| zsh | 2 Redirect in Pipeline stdout: 1stderr: hi |
| dash | 4 PIPESTATUS stdout: stderr: /bin/dash: 2: Bad substitution |
| zsh | 4 PIPESTATUS stdout: stderr: |
| dash | 5 |& stdout: stderr: /bin/dash: 1: Syntax error: "&" unexpected |
| mksh | 5 |& stdout: stderr: STDERR close failed in file object destructor: sys.excepthook is missing lost sys.stderr |
| osh | 5 |& [osh stdout] Expected u'STDERR\nSTDOUT\n', got '' [osh status] Expected 0, got 1 stdout: stderr: Traceback (most recent call last):
File "bin/osh", line 438, in <module>
main(sys.argv)
File "bin/osh", line 425, in main
sys.exit(OilMain(argv))
File "bin/osh", line 408, in OilMain
status = OshMain(main_argv)
File "bin/osh", line 367, in OshMain
status = ex.Execute(node)
File "/home/andy/git/oil/bin/../core/cmd_exec.py", line 849, in Execute
status = self._Execute(node, fork_external=fork_external)
File "/home/andy/git/oil/bin/../core/cmd_exec.py", line 833, in _Execute
status = self._Dispatch(node, fork_external)
File "/home/andy/git/oil/bin/../core/cmd_exec.py", line 631, in _Dispatch
status = self._ExecuteList(node.children)
File "/home/andy/git/oil/bin/../core/cmd_exec.py", line 842, in _ExecuteList
status = self._Execute(child) # last status wins
File "/home/andy/git/oil/bin/../core/cmd_exec.py", line 833, in _Execute
status = self._Dispatch(node, fork_external)
File "/home/andy/git/oil/bin/../core/cmd_exec.py", line 563, in _Dispatch
raise NotImplementedError('|&')
NotImplementedError: |&
|
| zsh | 13 Evaluation of argv[0] in pipeline occurs in child stdout: 1 cmd=echostderr: |