'_tmp/cat2' -> '/bin/cat'
[1/67] make-pystub _bin/shwrap/asdl_main asdl/asdl_main.py asdl/ast.py asdl/front_end.py asdl/gen_cpp.py asdl/gen_python.py asdl/util.py asdl/visitor.py
[2/67] build-stamp-cpp _build/git-commit.txt _gen/cpp/build_stamp.h _gen/cpp/build_stamp.cc
[3/67] make-pystub _bin/shwrap/optview_gen core/optview_gen.py frontend/option_def.py
[4/67] make-pystub _bin/shwrap/embedded_file_gen cpp/embedded_file_gen.py mycpp/mylib.py pylib/collections_.py
[5/67] make-pystub _bin/shwrap/flag_gen frontend/flag_gen.py _devbuild/gen/hnode_asdl.py _devbuild/gen/id_kind_asdl.py _devbuild/gen/runtime_asdl.py _devbuild/gen/syntax_asdl.py _devbuild/gen/value_asdl.py asdl/pybase.py asdl/runtime.py core/error.py core/num.py frontend/args.py frontend/flag_def.py frontend/flag_spec.py frontend/option_def.py mycpp/mops.py mycpp/mylib.py pylib/collections_.py
[6/67] make-pystub _bin/shwrap/consts_gen frontend/consts_gen.py _devbuild/gen/hnode_asdl.py _devbuild/gen/types_asdl.py asdl/ast.py asdl/gen_cpp.py asdl/pybase.py asdl/runtime.py asdl/util.py asdl/visitor.py frontend/builtin_def.py frontend/id_kind_def.py frontend/option_def.py mycpp/mops.py mycpp/mylib.py pylib/collections_.py
[7/67] optview_gen > _gen/core/optview.h
[8/67] asdl_main cpp --no-pretty-print-methods asdl/hnode.asdl _gen/asdl/hnode.asdl _gen/asdl/hnode.asdl_debug.py
[9/67] asdl_main cpp  core/runtime.asdl _gen/core/runtime.asdl _gen/core/runtime.asdl_debug.py
[10/67] embedded_file_gen _devbuild/help/data-errors _devbuild/help/data-front-end _devbuild/help/data-j8-notation _devbuild/help/help _devbuild/help/oils-usage _devbuild/help/osh-builtin-cmd _devbuild/help/osh-chapters _devbuild/help/osh-cmd-lang _devbuild/help/osh-front-end _devbuild/help/osh-mini-lang _devbuild/help/osh-option _devbuild/help/osh-osh-assign _devbuild/help/osh-plugin _devbuild/help/osh-special-var _devbuild/help/osh-stdlib _devbuild/help/osh-type-method _devbuild/help/osh-usage _devbuild/help/osh-word-lang _devbuild/help/ysh-builtin-cmd _devbuild/help/ysh-builtin-func _devbuild/help/ysh-chapters _devbuild/help/ysh-cmd-lang _devbuild/help/ysh-expr-lang _devbuild/help/ysh-front-end _devbuild/help/ysh-mini-lang _devbuild/help/ysh-option _devbuild/help/ysh-plugin _devbuild/help/ysh-special-var _devbuild/help/ysh-stdlib _devbuild/help/ysh-type-method _devbuild/help/ysh-usage _devbuild/help/ysh-word-lang _devbuild/help/ysh-ysh-cmd stdlib/funcs.ysh stdlib/methods.ysh stdlib/osh/bash-strict.sh stdlib/osh/byo-server.sh stdlib/osh/no-quotes.sh stdlib/osh/task-five.sh stdlib/osh/two.sh stdlib/prelude.ysh stdlib/testing.ysh stdlib/ysh/args.ysh stdlib/ysh/list.ysh stdlib/ysh/math.ysh stdlib/ysh/stream.ysh stdlib/ysh/table.ysh stdlib/ysh/yblocks.ysh _gen/bin/text_files.cc
[11/67] asdl_main cpp  core/value.asdl _gen/core/value.asdl _gen/core/value.asdl_debug.py
[12/67] make-pystub _bin/shwrap/signal_gen frontend/signal_gen.py frontend/signal_def.py
[13/67] asdl_main cpp  data_lang/nil8.asdl _gen/data_lang/nil8.asdl _gen/data_lang/nil8.asdl_debug.py
[14/67] asdl_main cpp  display/pretty.asdl _gen/display/pretty.asdl _gen/display/pretty.asdl_debug.py
[15/67] consts_gen cpp _gen/frontend/id_kind.asdl
[16/67] signal_gen cpp _gen/frontend/signal
[17/67] make-pystub _bin/shwrap/option_gen frontend/option_gen.py asdl/ast.py frontend/builtin_def.py frontend/option_def.py
[18/67] consts_gen cpp-consts _gen/frontend/consts
[19/67] make-pystub _bin/shwrap/grammar_gen ysh/grammar_gen.py _devbuild/gen/hnode_asdl.py _devbuild/gen/id_kind_asdl.py _devbuild/gen/runtime_asdl.py _devbuild/gen/syntax_asdl.py _devbuild/gen/types_asdl.py _devbuild/gen/value_asdl.py asdl/pybase.py asdl/runtime.py core/alloc.py core/error.py core/num.py core/optview.py frontend/builtin_def.py frontend/consts.py frontend/id_kind_def.py frontend/lexer.py frontend/lexer_def.py frontend/match.py frontend/option_def.py frontend/reader.py mycpp/mops.py mycpp/mylib.py pgen2/grammar.py pgen2/parse.py pgen2/pgen.py pgen2/pnode.py pgen2/token.py pgen2/tokenize.py pylib/collections_.py
[20/67] flag_gen cpp _gen/frontend/arg_types
[21/67] asdl_main cpp --no-pretty-print-methods frontend/types.asdl _gen/frontend/types.asdl _gen/frontend/types.asdl_debug.py
[22/67] consts_gen cpp _gen/frontend/option.asdl
[23/67] make-pystub _bin/shwrap/arith_parse_gen osh/arith_parse_gen.py _devbuild/gen/hnode_asdl.py _devbuild/gen/id_kind_asdl.py _devbuild/gen/nil8_asdl.py _devbuild/gen/pretty_asdl.py _devbuild/gen/runtime_asdl.py _devbuild/gen/syntax_asdl.py _devbuild/gen/types_asdl.py _devbuild/gen/value_asdl.py asdl/format.py asdl/pybase.py asdl/runtime.py core/error.py core/num.py data_lang/j8.py data_lang/j8_lite.py data_lang/pyj8.py display/ansi.py display/pp_value.py display/pretty.py display/ui.py frontend/builtin_def.py frontend/consts.py frontend/id_kind_def.py frontend/lexer.py frontend/lexer_def.py frontend/location.py frontend/match.py frontend/option_def.py mycpp/mops.py mycpp/mylib.py osh/arith_parse.py osh/tdop.py osh/word_.py pylib/cgi.py pylib/collections_.py
[24/67] asdl_main cpp  frontend/syntax.asdl _gen/frontend/syntax.asdl _gen/frontend/syntax.asdl_debug.py
[25/67] grammar_gen cpp ysh/grammar.pgen2 _gen/ysh
[26/67] arith-parse-gen > _gen/osh/arith_parse.cc
[27/67] cxx dbg '' _gen/frontend/id_kind.asdl.cc _build/obj/cxx-dbg/_gen/frontend/id_kind.asdl.o
[28/67] cxx dbg '' _gen/display/pretty.asdl.cc _build/obj/cxx-dbg/_gen/display/pretty.asdl.o
[29/67] cxx dbg '' cpp/data_lang.cc _build/obj/cxx-dbg/cpp/data_lang.o
[30/67] cxx dbg '' mycpp/bump_leak_heap.cc _build/obj/cxx-dbg/mycpp/bump_leak_heap.o
[31/67] cxx dbg '' mycpp/gc_mops.cc _build/obj/cxx-dbg/mycpp/gc_mops.o
[32/67] cxx dbg '' _gen/core/value.asdl.cc _build/obj/cxx-dbg/_gen/core/value.asdl.o
[33/67] cxx dbg '' mycpp/gc_builtins.cc _build/obj/cxx-dbg/mycpp/gc_builtins.o
[34/67] cxx dbg '' _gen/core/runtime.asdl.cc _build/obj/cxx-dbg/_gen/core/runtime.asdl.o
[35/67] cxx dbg '' mycpp/hash.cc _build/obj/cxx-dbg/mycpp/hash.o
[36/67] cxx dbg '' _gen/bin/text_files.cc _build/obj/cxx-dbg/_gen/bin/text_files.o
[37/67] cxx dbg '' mycpp/gc_mylib.cc _build/obj/cxx-dbg/mycpp/gc_mylib.o
[38/67] cxx dbg '' _gen/cpp/build_stamp.cc _build/obj/cxx-dbg/_gen/cpp/build_stamp.o
[39/67] cxx dbg '' cpp/fanos.cc _build/obj/cxx-dbg/cpp/fanos.o
[40/67] cxx dbg '' mycpp/mark_sweep_heap.cc _build/obj/cxx-dbg/mycpp/mark_sweep_heap.o
[41/67] cxx dbg '' _gen/frontend/syntax.asdl.cc _build/obj/cxx-dbg/_gen/frontend/syntax.asdl.o
[42/67] cxx dbg '' cpp/fanos_shared.c _build/obj/cxx-dbg/cpp/fanos_shared.o
[43/67] cxx dbg '' cpp/core.cc _build/obj/cxx-dbg/cpp/core.o
[44/67] cxx dbg '' cpp/frontend_flag_spec.cc _build/obj/cxx-dbg/cpp/frontend_flag_spec.o
[45/67] cxx dbg '' cpp/libc.cc _build/obj/cxx-dbg/cpp/libc.o
[46/67] cxx dbg '' cpp/frontend_pyreadline.cc _build/obj/cxx-dbg/cpp/frontend_pyreadline.o
[47/67] cxx dbg '' cpp/frontend_match.cc _build/obj/cxx-dbg/cpp/frontend_match.o
[48/67] cxx dbg '' cpp/osh.cc _build/obj/cxx-dbg/cpp/osh.o
[49/67] cxx dbg '' cpp/osh_tdop.cc _build/obj/cxx-dbg/cpp/osh_tdop.o
[50/67] cxx dbg '' cpp/pgen2.cc _build/obj/cxx-dbg/cpp/pgen2.o
[51/67] cxx dbg '' cpp/pylib.cc _build/obj/cxx-dbg/cpp/pylib.o
[52/67] cxx dbg '' _gen/frontend/arg_types.cc _build/obj/cxx-dbg/_gen/frontend/arg_types.o
[53/67] cxx dbg '' cpp/stdlib.cc _build/obj/cxx-dbg/cpp/stdlib.o
[54/67] cxx dbg '' _gen/data_lang/nil8.asdl.cc _build/obj/cxx-dbg/_gen/data_lang/nil8.asdl.o
[55/67] cxx dbg '' _gen/frontend/consts.cc _build/obj/cxx-dbg/_gen/frontend/consts.o
[56/67] cxx dbg '' mycpp/gc_str.cc _build/obj/cxx-dbg/mycpp/gc_str.o
[57/67] cxx dbg '' _gen/frontend/signal.cc _build/obj/cxx-dbg/_gen/frontend/signal.o
[58/67] cxx dbg '' _gen/frontend/help_meta.cc _build/obj/cxx-dbg/_gen/frontend/help_meta.o
[59/67] cxx dbg '' _gen/osh/arith_parse.cc _build/obj/cxx-dbg/_gen/osh/arith_parse.o
[60/67] cxx dbg '' _gen/ysh/grammar_tables.cc _build/obj/cxx-dbg/_gen/ysh/grammar_tables.o
[61/67] cxx opt '-Ivendor -std=c++17' prebuilt/datalog/dataflow.cc _build/obj/datalog/dataflow.o
[62/67] LINK cxx opt '-lstdc++fs' _bin/datalog/dataflow _build/obj/datalog/dataflow.o
[63/67] make-pystub _bin/shwrap/mycpp_main mycpp/mycpp_main.py mycpp/ir_pass.py mycpp/const_pass.py mycpp/cppgen_pass.py mycpp/crash.py mycpp/debug_pass.py mycpp/control_flow_pass.py mycpp/format_strings.py mycpp/pass_state.py mycpp/util.py mycpp/visitor.py _bin/datalog/dataflow
[64/67] gen-oils-for-unix oils_for_unix _gen/bin/oils_for_unix.mycpp cpp/preamble.h asdl/format.py asdl/runtime.py bin/oils_for_unix.py builtin/assign_osh.py builtin/bracket_osh.py builtin/completion_osh.py builtin/completion_ysh.py builtin/dirs_osh.py builtin/error_ysh.py builtin/func_eggex.py builtin/func_hay.py builtin/func_misc.py builtin/hay_ysh.py builtin/io_osh.py builtin/io_ysh.py builtin/json_ysh.py builtin/meta_osh.py builtin/method_dict.py builtin/method_io.py builtin/method_list.py builtin/method_other.py builtin/method_str.py builtin/misc_osh.py builtin/module_ysh.py builtin/printf_osh.py builtin/process_osh.py builtin/pure_osh.py builtin/pure_ysh.py builtin/read_osh.py builtin/readline_osh.py builtin/trap_osh.py core/alloc.py core/comp_ui.py core/completion.py core/dev.py core/error.py core/executor.py core/main_loop.py core/num.py core/process.py core/shell.py core/state.py core/util.py core/vm.py data_lang/j8.py data_lang/j8_lite.py display/ansi.py display/pp_value.py display/pretty.py display/ui.py frontend/args.py frontend/flag_util.py frontend/lexer.py frontend/location.py frontend/parse_lib.py frontend/reader.py frontend/typed_args.py osh/arith_parse.py osh/bool_parse.py osh/braces.py osh/cmd_eval.py osh/cmd_parse.py osh/glob_.py osh/history.py osh/prompt.py osh/sh_expr_eval.py osh/split.py osh/string_ops.py osh/tdop.py osh/word_.py osh/word_compile.py osh/word_eval.py osh/word_parse.py pgen2/parse.py pylib/cgi.py pylib/os_path.py tools/fmt.py tools/ysh_ify.py ysh/expr_eval.py ysh/expr_parse.py ysh/expr_to_ast.py ysh/func_proc.py ysh/regex_translate.py ysh/val_ops.py
	mycpp: LOADING asdl/format.py asdl/runtime.py bin/oils_for_unix.py builtin/assign_osh.py builtin/bracket_osh.py builtin/completion_osh.py builtin/completion_ysh.py builtin/dirs_osh.py builtin/error_ysh.py builtin/func_eggex.py builtin/func_hay.py builtin/func_misc.py builtin/hay_ysh.py builtin/io_osh.py builtin/io_ysh.py builtin/json_ysh.py builtin/meta_osh.py builtin/method_dict.py builtin/method_io.py builtin/method_list.py builtin/method_other.py builtin/method_str.py builtin/misc_osh.py builtin/module_ysh.py builtin/printf_osh.py builtin/process_osh.py builtin/pure_osh.py builtin/pure_ysh.py builtin/read_osh.py builtin/readline_osh.py builtin/trap_osh.py core/alloc.py core/comp_ui.py core/completion.py core/dev.py core/error.py core/executor.py core/main_loop.py core/num.py core/process.py core/shell.py core/state.py core/util.py core/vm.py data_lang/j8.py data_lang/j8_lite.py display/ansi.py display/pp_value.py display/pretty.py display/ui.py frontend/args.py frontend/flag_util.py frontend/lexer.py frontend/location.py frontend/parse_lib.py frontend/reader.py frontend/typed_args.py osh/arith_parse.py osh/bool_parse.py osh/braces.py osh/cmd_eval.py osh/cmd_parse.py osh/glob_.py osh/history.py osh/prompt.py osh/sh_expr_eval.py osh/split.py osh/string_ops.py osh/tdop.py osh/word_.py osh/word_compile.py osh/word_eval.py osh/word_parse.py pgen2/parse.py pylib/cgi.py pylib/os_path.py tools/fmt.py tools/ysh_ify.py ysh/expr_eval.py ysh/expr_parse.py ysh/expr_to_ast.py ysh/func_proc.py ysh/regex_translate.py ysh/val_ops.py
	mycpp pass: IR
	mycpp pass: CONST
	mycpp pass: FORWARD DECL
	mycpp pass: PROTOTYPES
	mycpp pass: CONTROL FLOW
	mycpp pass: DATAFLOW
	mycpp pass: IMPL
WARNING: builtin.assign_osh._PrintVariables() has 28 stack roots. Consider refactoring this function.
WARNING: builtin.io_ysh.Pp.Run() has 21 stack roots. Consider refactoring this function.
WARNING: builtin.method_str.Replace.Call() has 26 stack roots. Consider refactoring this function.
WARNING: builtin.printf_osh.Printf._Percent() has 21 stack roots. Consider refactoring this function.
WARNING: builtin.printf_osh.Printf.Run() has 17 stack roots. Consider refactoring this function.
WARNING: core.completion.RootCompleter.Matches() has 31 stack roots. Consider refactoring this function.
WARNING: osh.cmd_parse.CommandParser._MaybeExpandAliases() has 17 stack roots. Consider refactoring this function.
WARNING: osh.history.Evaluator.Eval() has 19 stack roots. Consider refactoring this function.
WARNING: osh.word_eval.AbstractWordEvaluator._ApplyTestOp() has 17 stack roots. Consider refactoring this function.
WARNING: tools.ysh_ify.YshPrinter.DoCommand() has 18 stack roots. Consider refactoring this function.
WARNING: ysh.expr_eval.ExprEvaluator._EvalExpr() has 18 stack roots. Consider refactoring this function.
WARNING: ysh.expr_parse._PushYshTokens() has 27 stack roots. Consider refactoring this function.
WARNING: ysh.expr_to_ast.Transformer.Expr() has 18 stack roots. Consider refactoring this function.
WARNING: builtin.completion_osh.SpecBuilder.Build() has 18 stack roots. Consider refactoring this function.
WARNING: core.shell.Main() has 109 stack roots. Consider refactoring this function.
[65/67] cxx dbg '' _gen/bin/oils_for_unix.mycpp.cc _build/obj/cxx-dbg/_gen/bin/oils_for_unix.mycpp.o
[66/67] LINK cxx dbg '' _bin/cxx-dbg/oils-for-unix _build/obj/cxx-dbg/_gen/bin/oils_for_unix.mycpp.o _build/obj/cxx-dbg/_gen/bin/text_files.o _build/obj/cxx-dbg/_gen/core/runtime.asdl.o _build/obj/cxx-dbg/_gen/core/value.asdl.o _build/obj/cxx-dbg/_gen/cpp/build_stamp.o _build/obj/cxx-dbg/cpp/core.o _build/obj/cxx-dbg/cpp/data_lang.o _build/obj/cxx-dbg/cpp/fanos.o _build/obj/cxx-dbg/cpp/fanos_shared.o _build/obj/cxx-dbg/cpp/frontend_flag_spec.o _build/obj/cxx-dbg/cpp/frontend_match.o _build/obj/cxx-dbg/cpp/frontend_pyreadline.o _build/obj/cxx-dbg/cpp/libc.o _build/obj/cxx-dbg/cpp/osh.o _build/obj/cxx-dbg/cpp/osh_tdop.o _build/obj/cxx-dbg/cpp/pgen2.o _build/obj/cxx-dbg/cpp/pylib.o _build/obj/cxx-dbg/cpp/stdlib.o _build/obj/cxx-dbg/_gen/data_lang/nil8.asdl.o _build/obj/cxx-dbg/_gen/display/pretty.asdl.o _build/obj/cxx-dbg/_gen/frontend/arg_types.o _build/obj/cxx-dbg/_gen/frontend/consts.o _build/obj/cxx-dbg/_gen/frontend/help_meta.o _build/obj/cxx-dbg/_gen/frontend/id_kind.asdl.o _build/obj/cxx-dbg/_gen/frontend/signal.o _build/obj/cxx-dbg/_gen/frontend/syntax.asdl.o _build/obj/cxx-dbg/mycpp/bump_leak_heap.o _build/obj/cxx-dbg/mycpp/gc_builtins.o _build/obj/cxx-dbg/mycpp/gc_mops.o _build/obj/cxx-dbg/mycpp/gc_mylib.o _build/obj/cxx-dbg/mycpp/gc_str.o _build/obj/cxx-dbg/mycpp/hash.o _build/obj/cxx-dbg/mycpp/mark_sweep_heap.o _build/obj/cxx-dbg/_gen/osh/arith_parse.o _build/obj/cxx-dbg/_gen/ysh/grammar_tables.o
[67/67] SYMLINK _bin/cxx-dbg oils-for-unix osh
'osh' -> 'oils-for-unix'
run_snippet bash fgproc -
[foreground process]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1       1 sh
      7       1       1       1       1 bash
     20       7       1       1       1 bash
   1305      20       1       1       1 python2
   1306    1305       1       1       1 time-helper
   1307    1306       1       1       1 bash
   1787    1307       1       1       1 bash
   1788    1787       1       1       1 python2
   1789    1788       1       1       1 time-helper
   1790    1789       1       1       1 bash
   1791    1790       1       1       1 bash
   1792    1791       1       1       1 ps

run_snippet bash fgproc yes
[foreground process]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1    1799 sh
      7       1       1       1    1799 bash
     20       7       1       1    1799 bash
   1305      20       1       1    1799 python2
   1306    1305       1       1    1799 time-helper
   1307    1306       1       1    1799 bash
   1787    1307       1       1    1799 bash
   1795    1787       1       1    1799 python2
   1796    1795       1       1    1799 time-helper
   1797    1796       1       1    1799 bash
   1798    1797    1798       1    1799 bash
   1799    1798    1799       1    1799 ps

run_snippet bash bgproc -
[background process]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1       1 sh
      7       1       1       1       1 bash
     20       7       1       1       1 bash
   1305      20       1       1       1 python2
   1306    1305       1       1       1 time-helper
   1307    1306       1       1       1 bash
   1787    1307       1       1       1 bash
   1802    1787       1       1       1 python2
   1803    1802       1       1       1 time-helper
   1804    1803       1       1       1 bash
   1805    1804       1       1       1 bash
   1806    1805       1       1       1 ps

run_snippet bash bgproc yes
[1] 1813
[1]+  Done                    ps -o $PS_COLS
[background process]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1    1812 sh
      7       1       1       1    1812 bash
     20       7       1       1    1812 bash
   1305      20       1       1    1812 python2
   1306    1305       1       1    1812 time-helper
   1307    1306       1       1    1812 bash
   1787    1307       1       1    1812 bash
   1809    1787       1       1    1812 python2
   1810    1809       1       1    1812 time-helper
   1811    1810       1       1    1812 bash
   1812    1811    1812       1    1812 bash
   1813    1812    1813       1    1812 ps

run_snippet bash fgpipe -
[foreground pipeline, last is external]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1       1 sh
      7       1       1       1       1 bash
     20       7       1       1       1 bash
   1305      20       1       1       1 python2
   1306    1305       1       1       1 time-helper
   1307    1306       1       1       1 bash
   1787    1307       1       1       1 bash
   1816    1787       1       1       1 python2
   1817    1816       1       1       1 time-helper
   1818    1817       1       1       1 bash
   1819    1818       1       1       1 bash
   1820    1819       1       1       1 ps
   1821    1819       1       1       1 cat
   1822    1819       1       1       1 cat2

run_snippet bash fgpipe yes
[foreground pipeline, last is external]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1    1829 sh
      7       1       1       1    1829 bash
     20       7       1       1    1829 bash
   1305      20       1       1    1829 python2
   1306    1305       1       1    1829 time-helper
   1307    1306       1       1    1829 bash
   1787    1307       1       1    1829 bash
   1825    1787       1       1    1829 python2
   1826    1825       1       1    1829 time-helper
   1827    1826       1       1    1829 bash
   1828    1827    1828       1    1829 bash
   1829    1828    1829       1    1829 ps
   1830    1828    1829       1    1829 cat
   1831    1828    1829       1    1829 cat2

run_snippet bash fgpipe-lastpipe -
[foreground pipeline, last is builtin]
PID    PPID    PGID     SID   TPGID COMMAND
1       0       1       1       1 sh
7       1       1       1       1 bash
20       7       1       1       1 bash
1305      20       1       1       1 python2
1306    1305       1       1       1 time-helper
1307    1306       1       1       1 bash
1787    1307       1       1       1 bash
1834    1787       1       1       1 python2
1835    1834       1       1       1 time-helper
1836    1835       1       1       1 bash
1837    1836       1       1       1 bash
1838    1837       1       1       1 ps
1839    1837       1       1       1 cat2
1840    1837       1       1       1 bash

run_snippet bash fgpipe-lastpipe yes
[foreground pipeline, last is builtin]
PID    PPID    PGID     SID   TPGID COMMAND
1       0       1       1    1847 sh
7       1       1       1    1847 bash
20       7       1       1    1847 bash
1305      20       1       1    1847 python2
1306    1305       1       1    1847 time-helper
1307    1306       1       1    1847 bash
1787    1307       1       1    1847 bash
1843    1787       1       1    1847 python2
1844    1843       1       1    1847 time-helper
1845    1844       1       1    1847 bash
1846    1845    1846       1    1847 bash
1847    1846    1847       1    1847 ps
1848    1846    1847       1    1847 cat2
1849    1846    1847       1    1847 bash

run_snippet bash bgpipe -
[background pipeline]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1       1 sh
      7       1       1       1       1 bash
     20       7       1       1       1 bash
   1305      20       1       1       1 python2
   1306    1305       1       1       1 time-helper
   1307    1306       1       1       1 bash
   1787    1307       1       1       1 bash
   1852    1787       1       1       1 python2
   1853    1852       1       1       1 time-helper
   1854    1853       1       1       1 bash
   1855    1854       1       1       1 bash
   1856    1855       1       1       1 ps
   1857    1855       1       1       1 cat
   1858    1855       1       1       1 cat2

run_snippet bash bgpipe yes
[1] 1867
[1]+  Done                    ps -o $PS_COLS | cat | _tmp/cat2
[background pipeline]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1    1864 sh
      7       1       1       1    1864 bash
     20       7       1       1    1864 bash
   1305      20       1       1    1864 python2
   1306    1305       1       1    1864 time-helper
   1307    1306       1       1    1864 bash
   1787    1307       1       1    1864 bash
   1861    1787       1       1    1864 python2
   1862    1861       1       1    1864 time-helper
   1863    1862       1       1    1864 bash
   1864    1863    1864       1    1864 bash
   1865    1864    1865       1    1864 ps
   1866    1864    1865       1    1864 cat
   1867    1864    1865       1    1864 cat2

run_snippet bash bgpipe-lastpipe -
[background pipeline, last is builtin]
PID    PPID    PGID     SID   TPGID COMMAND
1       0       1       1       1 sh
7       1       1       1       1 bash
20       7       1       1       1 bash
1305      20       1       1       1 python2
1306    1305       1       1       1 time-helper
1307    1306       1       1       1 bash
1787    1307       1       1       1 bash
1870    1787       1       1       1 python2
1871    1870       1       1       1 time-helper
1872    1871       1       1       1 bash
1873    1872       1       1       1 bash
1874    1873       1       1       1 ps
1875    1873       1       1       1 cat2
1876    1873       1       1       1 bash

run_snippet bash bgpipe-lastpipe yes
[1] 1885
[1]+  Done                    ps -o $PS_COLS | _tmp/cat2 | while read -r line; do
    echo "$line";
done
[background pipeline, last is builtin]
PID    PPID    PGID     SID   TPGID COMMAND
1       0       1       1    1882 sh
7       1       1       1    1882 bash
20       7       1       1    1882 bash
1305      20       1       1    1882 python2
1306    1305       1       1    1882 time-helper
1307    1306       1       1    1882 bash
1787    1307       1       1    1882 bash
1879    1787       1       1    1882 python2
1880    1879       1       1    1882 time-helper
1881    1880       1       1    1882 bash
1882    1881    1882       1    1882 bash
1883    1882    1883       1    1882 ps
1884    1882    1883       1    1882 cat2
1885    1882    1883       1    1882 bash

run_snippet bash subshell -
[subshell]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1       1 sh
      7       1       1       1       1 bash
     20       7       1       1       1 bash
   1305      20       1       1       1 python2
   1306    1305       1       1       1 time-helper
   1307    1306       1       1       1 bash
   1787    1307       1       1       1 bash
   1888    1787       1       1       1 python2
   1889    1888       1       1       1 time-helper
   1890    1889       1       1       1 bash
   1891    1890       1       1       1 bash
   1892    1891       1       1       1 bash
   1893    1892       1       1       1 ps
ALIVE

run_snippet bash subshell yes
[subshell]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1    1900 sh
      7       1       1       1    1900 bash
     20       7       1       1    1900 bash
   1305      20       1       1    1900 python2
   1306    1305       1       1    1900 time-helper
   1307    1306       1       1    1900 bash
   1787    1307       1       1    1900 bash
   1896    1787       1       1    1900 python2
   1897    1896       1       1    1900 time-helper
   1898    1897       1       1    1900 bash
   1899    1898    1899       1    1900 bash
   1900    1899    1900       1    1900 bash
   1901    1900    1900       1    1900 ps
ALIVE

run_snippet bash csub -
[command sub]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1       1 sh
      7       1       1       1       1 bash
     20       7       1       1       1 bash
   1305      20       1       1       1 python2
   1306    1305       1       1       1 time-helper
   1307    1306       1       1       1 bash
   1787    1307       1       1       1 bash
   1904    1787       1       1       1 python2
   1905    1904       1       1       1 time-helper
   1906    1905       1       1       1 bash
   1907    1906       1       1       1 bash
   1908    1907       1       1       1 ps

run_snippet bash csub yes
[command sub]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1    1914 sh
      7       1       1       1    1914 bash
     20       7       1       1    1914 bash
   1305      20       1       1    1914 python2
   1306    1305       1       1    1914 time-helper
   1307    1306       1       1    1914 bash
   1787    1307       1       1    1914 bash
   1911    1787       1       1    1914 python2
   1912    1911       1       1    1914 time-helper
   1913    1912       1       1    1914 bash
   1914    1913    1914       1    1914 bash
   1915    1914    1914       1    1914 ps

run_snippet bash psub -
[process sub]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1       1 sh
      7       1       1       1       1 bash
     20       7       1       1       1 bash
   1305      20       1       1       1 python2
   1306    1305       1       1       1 time-helper
   1307    1306       1       1       1 bash
   1787    1307       1       1       1 bash
   1918    1787       1       1       1 python2
   1919    1918       1       1       1 time-helper
   1920    1919       1       1       1 bash
   1921    1920       1       1       1 bash
   1922    1921       1       1       1 bash
   1923    1921       1       1       1 cat
   1924    1922       1       1       1 ps

run_snippet bash psub yes
[process sub]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1    1932 sh
      7       1       1       1    1932 bash
     20       7       1       1    1932 bash
   1305      20       1       1    1932 python2
   1306    1305       1       1    1932 time-helper
   1307    1306       1       1    1932 bash
   1787    1307       1       1    1932 bash
   1927    1787       1       1    1932 python2
   1928    1927       1       1    1932 time-helper
   1929    1928       1       1    1932 bash
   1930    1929    1930       1    1932 bash
   1931    1930    1930       1    1932 bash
   1932    1930    1932       1    1932 cat
   1933    1931    1930       1    1932 ps

run_snippet dash fgproc -
[foreground process]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1       1 sh
      7       1       1       1       1 bash
     20       7       1       1       1 bash
   1305      20       1       1       1 python2
   1306    1305       1       1       1 time-helper
   1307    1306       1       1       1 bash
   1787    1307       1       1       1 bash
   1936    1787       1       1       1 python2
   1937    1936       1       1       1 time-helper
   1938    1937       1       1       1 bash
   1939    1938       1       1       1 dash
   1940    1939       1       1       1 ps

run_snippet dash fgproc yes
[foreground process]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1    1947 sh
      7       1       1       1    1947 bash
     20       7       1       1    1947 bash
   1305      20       1       1    1947 python2
   1306    1305       1       1    1947 time-helper
   1307    1306       1       1    1947 bash
   1787    1307       1       1    1947 bash
   1943    1787       1       1    1947 python2
   1944    1943       1       1    1947 time-helper
   1945    1944       1       1    1947 bash
   1946    1945    1946       1    1947 dash
   1947    1946    1947       1    1947 ps

run_snippet dash bgproc -
[background process]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1       1 sh
      7       1       1       1       1 bash
     20       7       1       1       1 bash
   1305      20       1       1       1 python2
   1306    1305       1       1       1 time-helper
   1307    1306       1       1       1 bash
   1787    1307       1       1       1 bash
   1950    1787       1       1       1 python2
   1951    1950       1       1       1 time-helper
   1952    1951       1       1       1 bash
   1953    1952       1       1       1 dash
   1954    1953       1       1       1 ps

run_snippet dash bgproc yes
[background process]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1    1960 sh
      7       1       1       1    1960 bash
     20       7       1       1    1960 bash
   1305      20       1       1    1960 python2
   1306    1305       1       1    1960 time-helper
   1307    1306       1       1    1960 bash
   1787    1307       1       1    1960 bash
   1957    1787       1       1    1960 python2
   1958    1957       1       1    1960 time-helper
   1959    1958       1       1    1960 bash
   1960    1959    1960       1    1960 dash
   1961    1960    1961       1    1960 ps

run_snippet dash fgpipe -
[foreground pipeline, last is external]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1       1 sh
      7       1       1       1       1 bash
     20       7       1       1       1 bash
   1305      20       1       1       1 python2
   1306    1305       1       1       1 time-helper
   1307    1306       1       1       1 bash
   1787    1307       1       1       1 bash
   1964    1787       1       1       1 python2
   1965    1964       1       1       1 time-helper
   1966    1965       1       1       1 bash
   1967    1966       1       1       1 dash
   1968    1967       1       1       1 ps
   1969    1967       1       1       1 cat
   1970    1967       1       1       1 cat2

run_snippet dash fgpipe yes
[foreground pipeline, last is external]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1    1977 sh
      7       1       1       1    1977 bash
     20       7       1       1    1977 bash
   1305      20       1       1    1977 python2
   1306    1305       1       1    1977 time-helper
   1307    1306       1       1    1977 bash
   1787    1307       1       1    1977 bash
   1973    1787       1       1    1977 python2
   1974    1973       1       1    1977 time-helper
   1975    1974       1       1    1977 bash
   1976    1975    1976       1    1977 dash
   1977    1976    1977       1    1977 ps
   1978    1976    1977       1    1977 cat
   1979    1976    1977       1    1977 cat2

run_snippet dash fgpipe-lastpipe -
[foreground pipeline, last is builtin]
PID    PPID    PGID     SID   TPGID COMMAND
1       0       1       1       1 sh
7       1       1       1       1 bash
20       7       1       1       1 bash
1305      20       1       1       1 python2
1306    1305       1       1       1 time-helper
1307    1306       1       1       1 bash
1787    1307       1       1       1 bash
1982    1787       1       1       1 python2
1983    1982       1       1       1 time-helper
1984    1983       1       1       1 bash
1985    1984       1       1       1 dash
1986    1985       1       1       1 ps
1987    1985       1       1       1 cat2
1988    1985       1       1       1 dash

run_snippet dash fgpipe-lastpipe yes
[foreground pipeline, last is builtin]
PID    PPID    PGID     SID   TPGID COMMAND
1       0       1       1    1995 sh
7       1       1       1    1995 bash
20       7       1       1    1995 bash
1305      20       1       1    1995 python2
1306    1305       1       1    1995 time-helper
1307    1306       1       1    1995 bash
1787    1307       1       1    1995 bash
1991    1787       1       1    1995 python2
1992    1991       1       1    1995 time-helper
1993    1992       1       1    1995 bash
1994    1993    1994       1    1995 dash
1995    1994    1995       1    1995 ps
1996    1994    1995       1    1995 cat2
1997    1994    1995       1    1995 dash

run_snippet dash bgpipe -
[background pipeline]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1       1 sh
      7       1       1       1       1 bash
     20       7       1       1       1 bash
   1305      20       1       1       1 python2
   1306    1305       1       1       1 time-helper
   1307    1306       1       1       1 bash
   1787    1307       1       1       1 bash
   2000    1787       1       1       1 python2
   2001    2000       1       1       1 time-helper
   2002    2001       1       1       1 bash
   2003    2002       1       1       1 dash
   2004    2003       1       1       1 ps
   2005    2003       1       1       1 cat
   2006    2003       1       1       1 cat2

run_snippet dash bgpipe yes
[background pipeline]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1    2012 sh
      7       1       1       1    2012 bash
     20       7       1       1    2012 bash
   1305      20       1       1    2012 python2
   1306    1305       1       1    2012 time-helper
   1307    1306       1       1    2012 bash
   1787    1307       1       1    2012 bash
   2009    1787       1       1    2012 python2
   2010    2009       1       1    2012 time-helper
   2011    2010       1       1    2012 bash
   2012    2011    2012       1    2012 dash
   2013    2012    2013       1    2012 ps
   2014    2012    2013       1    2012 cat
   2015    2012    2013       1    2012 cat2

run_snippet dash bgpipe-lastpipe -
[background pipeline, last is builtin]
PID    PPID    PGID     SID   TPGID COMMAND
1       0       1       1       1 sh
7       1       1       1       1 bash
20       7       1       1       1 bash
1305      20       1       1       1 python2
1306    1305       1       1       1 time-helper
1307    1306       1       1       1 bash
1787    1307       1       1       1 bash
2018    1787       1       1       1 python2
2019    2018       1       1       1 time-helper
2020    2019       1       1       1 bash
2021    2020       1       1       1 dash
2022    2021       1       1       1 ps
2023    2021       1       1       1 cat2
2024    2021       1       1       1 dash

run_snippet dash bgpipe-lastpipe yes
[background pipeline, last is builtin]
PID    PPID    PGID     SID   TPGID COMMAND
1       0       1       1    2030 sh
7       1       1       1    2030 bash
20       7       1       1    2030 bash
1305      20       1       1    2030 python2
1306    1305       1       1    2030 time-helper
1307    1306       1       1    2030 bash
1787    1307       1       1    2030 bash
2027    1787       1       1    2030 python2
2028    2027       1       1    2030 time-helper
2029    2028       1       1    2030 bash
2030    2029    2030       1    2030 dash
2031    2030    2031       1    2030 ps
2032    2030    2031       1    2030 cat2
2033    2030    2031       1    2030 dash

run_snippet dash subshell -
[subshell]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1       1 sh
      7       1       1       1       1 bash
     20       7       1       1       1 bash
   1305      20       1       1       1 python2
   1306    1305       1       1       1 time-helper
   1307    1306       1       1       1 bash
   1787    1307       1       1       1 bash
   2036    1787       1       1       1 python2
   2037    2036       1       1       1 time-helper
   2038    2037       1       1       1 bash
   2039    2038       1       1       1 dash
   2040    2039       1       1       1 dash
   2041    2040       1       1       1 ps
ALIVE

run_snippet dash subshell yes
[subshell]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1    2048 sh
      7       1       1       1    2048 bash
     20       7       1       1    2048 bash
   1305      20       1       1    2048 python2
   1306    1305       1       1    2048 time-helper
   1307    1306       1       1    2048 bash
   1787    1307       1       1    2048 bash
   2044    1787       1       1    2048 python2
   2045    2044       1       1    2048 time-helper
   2046    2045       1       1    2048 bash
   2047    2046    2047       1    2048 dash
   2048    2047    2048       1    2048 dash
   2049    2048    2048       1    2048 ps
ALIVE

run_snippet dash csub -
[command sub]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1       1 sh
      7       1       1       1       1 bash
     20       7       1       1       1 bash
   1305      20       1       1       1 python2
   1306    1305       1       1       1 time-helper
   1307    1306       1       1       1 bash
   1787    1307       1       1       1 bash
   2052    1787       1       1       1 python2
   2053    2052       1       1       1 time-helper
   2054    2053       1       1       1 bash
   2055    2054       1       1       1 dash
   2056    2055       1       1       1 ps

run_snippet dash csub yes
[command sub]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1    2062 sh
      7       1       1       1    2062 bash
     20       7       1       1    2062 bash
   1305      20       1       1    2062 python2
   1306    1305       1       1    2062 time-helper
   1307    1306       1       1    2062 bash
   1787    1307       1       1    2062 bash
   2059    1787       1       1    2062 python2
   2060    2059       1       1    2062 time-helper
   2061    2060       1       1    2062 bash
   2062    2061    2062       1    2062 dash
   2063    2062    2062       1    2062 ps

run_snippet dash psub -
malformed ps output

run_snippet dash psub yes
malformed ps output

run_snippet mksh fgproc -
[foreground process]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1       1 sh
      7       1       1       1       1 bash
     20       7       1       1       1 bash
   1305      20       1       1       1 python2
   1306    1305       1       1       1 time-helper
   1307    1306       1       1       1 bash
   1787    1307       1       1       1 bash
   2078    1787       1       1       1 python2
   2079    2078       1       1       1 time-helper
   2080    2079       1       1       1 bash
   2081    2080       1       1       1 mksh
   2082    2081       1       1       1 ps

run_snippet mksh fgproc yes
[foreground process]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1    2089 sh
      7       1       1       1    2089 bash
     20       7       1       1    2089 bash
   1305      20       1       1    2089 python2
   1306    1305       1       1    2089 time-helper
   1307    1306       1       1    2089 bash
   1787    1307       1       1    2089 bash
   2085    1787       1       1    2089 python2
   2086    2085       1       1    2089 time-helper
   2087    2086       1       1    2089 bash
   2088    2087    2088       1    2089 mksh
   2089    2088    2089       1    2089 ps

run_snippet mksh bgproc -
[background process]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1       1 sh
      7       1       1       1       1 bash
     20       7       1       1       1 bash
   1305      20       1       1       1 python2
   1306    1305       1       1       1 time-helper
   1307    1306       1       1       1 bash
   1787    1307       1       1       1 bash
   2092    1787       1       1       1 python2
   2093    2092       1       1       1 time-helper
   2094    2093       1       1       1 bash
   2095    2094       1       1       1 mksh
   2096    2095       1       1       1 ps

run_snippet mksh bgproc yes
[1] 2103
[1] + Done                 \ps -o $PS_COLS 
[background process]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1    2102 sh
      7       1       1       1    2102 bash
     20       7       1       1    2102 bash
   1305      20       1       1    2102 python2
   1306    1305       1       1    2102 time-helper
   1307    1306       1       1    2102 bash
   1787    1307       1       1    2102 bash
   2099    1787       1       1    2102 python2
   2100    2099       1       1    2102 time-helper
   2101    2100       1       1    2102 bash
   2102    2101    2102       1    2102 mksh
   2103    2102    2103       1    2102 ps

run_snippet mksh fgpipe -
[foreground pipeline, last is external]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1       1 sh
      7       1       1       1       1 bash
     20       7       1       1       1 bash
   1305      20       1       1       1 python2
   1306    1305       1       1       1 time-helper
   1307    1306       1       1       1 bash
   1787    1307       1       1       1 bash
   2106    1787       1       1       1 python2
   2107    2106       1       1       1 time-helper
   2108    2107       1       1       1 bash
   2109    2108       1       1       1 mksh
   2110    2109       1       1       1 ps
   2111    2109       1       1       1 mksh
   2112    2109       1       1       1 cat2

run_snippet mksh fgpipe yes
[foreground pipeline, last is external]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1    2119 sh
      7       1       1       1    2119 bash
     20       7       1       1    2119 bash
   1305      20       1       1    2119 python2
   1306    1305       1       1    2119 time-helper
   1307    1306       1       1    2119 bash
   1787    1307       1       1    2119 bash
   2115    1787       1       1    2119 python2
   2116    2115       1       1    2119 time-helper
   2117    2116       1       1    2119 bash
   2118    2117    2118       1    2119 mksh
   2119    2118    2119       1    2119 ps
   2120    2118    2119       1    2119 mksh
   2121    2118    2119       1    2119 cat2

run_snippet mksh fgpipe-lastpipe -
[foreground pipeline, last is builtin]
PID    PPID    PGID     SID   TPGID COMMAND
1       0       1       1       1 sh
7       1       1       1       1 bash
20       7       1       1       1 bash
1305      20       1       1       1 python2
1306    1305       1       1       1 time-helper
1307    1306       1       1       1 bash
1787    1307       1       1       1 bash
2124    1787       1       1       1 python2
2125    2124       1       1       1 time-helper
2126    2125       1       1       1 bash
2127    2126       1       1       1 mksh
2128    2127       1       1       1 ps
2129    2127       1       1       1 cat2
2130    2127       1       1       1 mksh

run_snippet mksh fgpipe-lastpipe yes
[foreground pipeline, last is builtin]
PID    PPID    PGID     SID   TPGID COMMAND
1       0       1       1    2137 sh
7       1       1       1    2137 bash
20       7       1       1    2137 bash
1305      20       1       1    2137 python2
1306    1305       1       1    2137 time-helper
1307    1306       1       1    2137 bash
1787    1307       1       1    2137 bash
2133    1787       1       1    2137 python2
2134    2133       1       1    2137 time-helper
2135    2134       1       1    2137 bash
2136    2135    2136       1    2137 mksh
2137    2136    2137       1    2137 ps
2138    2136    2137       1    2137 cat2
2139    2136    2137       1    2137 mksh

run_snippet mksh bgpipe -
[background pipeline]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1       1 sh
      7       1       1       1       1 bash
     20       7       1       1       1 bash
   1305      20       1       1       1 python2
   1306    1305       1       1       1 time-helper
   1307    1306       1       1       1 bash
   1787    1307       1       1       1 bash
   2142    1787       1       1       1 python2
   2143    2142       1       1       1 time-helper
   2144    2143       1       1       1 bash
   2145    2144       1       1       1 mksh
   2146    2145       1       1       1 ps
   2147    2145       1       1       1 mksh
   2148    2145       1       1       1 cat2

run_snippet mksh bgpipe yes
[1] 2155 2156 2157
[1] + Done                 \ps -o $PS_COLS | \cat | _tmp/cat2 
[background pipeline]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1    2154 sh
      7       1       1       1    2154 bash
     20       7       1       1    2154 bash
   1305      20       1       1    2154 python2
   1306    1305       1       1    2154 time-helper
   1307    1306       1       1    2154 bash
   1787    1307       1       1    2154 bash
   2151    1787       1       1    2154 python2
   2152    2151       1       1    2154 time-helper
   2153    2152       1       1    2154 bash
   2154    2153    2154       1    2154 mksh
   2155    2154    2155       1    2154 ps
   2156    2154    2155       1    2154 mksh
   2157    2154    2155       1    2154 cat2

run_snippet mksh bgpipe-lastpipe -
[background pipeline, last is builtin]
PID    PPID    PGID     SID   TPGID COMMAND
1       0       1       1       1 sh
7       1       1       1       1 bash
20       7       1       1       1 bash
1305      20       1       1       1 python2
1306    1305       1       1       1 time-helper
1307    1306       1       1       1 bash
1787    1307       1       1       1 bash
2160    1787       1       1       1 python2
2161    2160       1       1       1 time-helper
2162    2161       1       1       1 bash
2163    2162       1       1       1 mksh
2164    2163       1       1       1 ps
2165    2163       1       1       1 cat2
2166    2163       1       1       1 mksh

run_snippet mksh bgpipe-lastpipe yes
[1] 2173 2174 2175
[1] + Done                 \ps -o $PS_COLS | _tmp/cat2 | while \read -r line ; do \echo "$line" ; done 
[background pipeline, last is builtin]
PID    PPID    PGID     SID   TPGID COMMAND
1       0       1       1    2172 sh
7       1       1       1    2172 bash
20       7       1       1    2172 bash
1305      20       1       1    2172 python2
1306    1305       1       1    2172 time-helper
1307    1306       1       1    2172 bash
1787    1307       1       1    2172 bash
2169    1787       1       1    2172 python2
2170    2169       1       1    2172 time-helper
2171    2170       1       1    2172 bash
2172    2171    2172       1    2172 mksh
2173    2172    2173       1    2172 ps
2174    2172    2173       1    2172 cat2
2175    2172    2173       1    2172 mksh

run_snippet mksh subshell -
[subshell]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1       1 sh
      7       1       1       1       1 bash
     20       7       1       1       1 bash
   1305      20       1       1       1 python2
   1306    1305       1       1       1 time-helper
   1307    1306       1       1       1 bash
   1787    1307       1       1       1 bash
   2178    1787       1       1       1 python2
   2179    2178       1       1       1 time-helper
   2180    2179       1       1       1 bash
   2181    2180       1       1       1 mksh
   2182    2181       1       1       1 mksh
   2183    2182       1       1       1 ps
ALIVE

run_snippet mksh subshell yes
[subshell]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1    2190 sh
      7       1       1       1    2190 bash
     20       7       1       1    2190 bash
   1305      20       1       1    2190 python2
   1306    1305       1       1    2190 time-helper
   1307    1306       1       1    2190 bash
   1787    1307       1       1    2190 bash
   2186    1787       1       1    2190 python2
   2187    2186       1       1    2190 time-helper
   2188    2187       1       1    2190 bash
   2189    2188    2189       1    2190 mksh
   2190    2189    2190       1    2190 mksh
   2191    2190    2190       1    2190 ps
ALIVE

run_snippet mksh csub -
[command sub]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1       1 sh
      7       1       1       1       1 bash
     20       7       1       1       1 bash
   1305      20       1       1       1 python2
   1306    1305       1       1       1 time-helper
   1307    1306       1       1       1 bash
   1787    1307       1       1       1 bash
   2194    1787       1       1       1 python2
   2195    2194       1       1       1 time-helper
   2196    2195       1       1       1 bash
   2197    2196       1       1       1 mksh
   2198    2197       1       1       1 ps

run_snippet mksh csub yes
[command sub]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1    2204 sh
      7       1       1       1    2204 bash
     20       7       1       1    2204 bash
   1305      20       1       1    2204 python2
   1306    1305       1       1    2204 time-helper
   1307    1306       1       1    2204 bash
   1787    1307       1       1    2204 bash
   2201    1787       1       1    2204 python2
   2202    2201       1       1    2204 time-helper
   2203    2202       1       1    2204 bash
   2204    2203    2204       1    2204 mksh
   2205    2204    2204       1    2204 ps

run_snippet mksh psub -
malformed ps output

run_snippet mksh psub yes
malformed ps output

run_snippet zsh fgproc -
[foreground process]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1       1 sh
      7       1       1       1       1 bash
     20       7       1       1       1 bash
   1305      20       1       1       1 python2
   1306    1305       1       1       1 time-helper
   1307    1306       1       1       1 bash
   1787    1307       1       1       1 bash
   2220    1787       1       1       1 python2
   2221    2220       1       1       1 time-helper
   2222    2221       1       1       1 bash
   2223    2222       1       1       1 zsh
   2224    2223       1       1       1 ps

run_snippet zsh fgproc yes
[foreground process]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1    2232 sh
      7       1       1       1    2232 bash
     20       7       1       1    2232 bash
   1305      20       1       1    2232 python2
   1306    1305       1       1    2232 time-helper
   1307    1306       1       1    2232 bash
   1787    1307       1       1    2232 bash
   2227    1787       1       1    2232 python2
   2228    2227       1       1    2232 time-helper
   2229    2228       1       1    2232 bash
   2230    2229    2230       1    2232 zsh
   2232    2230    2232       1    2232 ps

run_snippet zsh bgproc -
[background process]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1       1 sh
      7       1       1       1       1 bash
     20       7       1       1       1 bash
   1305      20       1       1       1 python2
   1306    1305       1       1       1 time-helper
   1307    1306       1       1       1 bash
   1787    1307       1       1       1 bash
   2235    1787       1       1       1 python2
   2236    2235       1       1       1 time-helper
   2237    2236       1       1       1 bash
   2238    2237       1       1       1 zsh
   2239    2238       1       1       1 ps

run_snippet zsh bgproc yes
[background process]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1    2245 sh
      7       1       1       1    2245 bash
     20       7       1       1    2245 bash
   1305      20       1       1    2245 python2
   1306    1305       1       1    2245 time-helper
   1307    1306       1       1    2245 bash
   1787    1307       1       1    2245 bash
   2242    1787       1       1    2245 python2
   2243    2242       1       1    2245 time-helper
   2244    2243       1       1    2245 bash
   2245    2244    2245       1    2245 zsh
   2247    2245    2247       1    2245 ps

run_snippet zsh fgpipe -
[foreground pipeline, last is external]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1       1 sh
      7       1       1       1       1 bash
     20       7       1       1       1 bash
   1305      20       1       1       1 python2
   1306    1305       1       1       1 time-helper
   1307    1306       1       1       1 bash
   1787    1307       1       1       1 bash
   2250    1787       1       1       1 python2
   2251    2250       1       1       1 time-helper
   2252    2251       1       1       1 bash
   2253    2252       1       1       1 zsh
   2254    2253       1       1       1 ps
   2255    2253       1       1       1 cat
   2256    2253       1       1       1 cat2

run_snippet zsh fgpipe yes
[foreground pipeline, last is external]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1    2264 sh
      7       1       1       1    2264 bash
     20       7       1       1    2264 bash
   1305      20       1       1    2264 python2
   1306    1305       1       1    2264 time-helper
   1307    1306       1       1    2264 bash
   1787    1307       1       1    2264 bash
   2259    1787       1       1    2264 python2
   2260    2259       1       1    2264 time-helper
   2261    2260       1       1    2264 bash
   2262    2261    2262       1    2264 zsh
   2264    2262    2264       1    2264 ps
   2265    2262    2264       1    2264 cat
   2266    2262    2264       1    2264 cat2

run_snippet zsh fgpipe-lastpipe -
[foreground pipeline, last is builtin]
PID    PPID    PGID     SID   TPGID COMMAND
1       0       1       1       1 sh
7       1       1       1       1 bash
20       7       1       1       1 bash
1305      20       1       1       1 python2
1306    1305       1       1       1 time-helper
1307    1306       1       1       1 bash
1787    1307       1       1       1 bash
2269    1787       1       1       1 python2
2270    2269       1       1       1 time-helper
2271    2270       1       1       1 bash
2272    2271       1       1       1 zsh
2273    2272       1       1       1 ps
2274    2272       1       1       1 cat2

run_snippet zsh fgpipe-lastpipe yes
[foreground pipeline, last is builtin]
PID    PPID    PGID     SID   TPGID COMMAND
1       0       1       1    2282 sh
7       1       1       1    2282 bash
20       7       1       1    2282 bash
1305      20       1       1    2282 python2
1306    1305       1       1    2282 time-helper
1307    1306       1       1    2282 bash
1787    1307       1       1    2282 bash
2277    1787       1       1    2282 python2
2278    2277       1       1    2282 time-helper
2279    2278       1       1    2282 bash
2280    2279    2280       1    2282 zsh
2282    2280    2282       1    2282 ps
2283    2280    2282       1    2282 cat2

run_snippet zsh bgpipe -
[background pipeline]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1       1 sh
      7       1       1       1       1 bash
     20       7       1       1       1 bash
   1305      20       1       1       1 python2
   1306    1305       1       1       1 time-helper
   1307    1306       1       1       1 bash
   1787    1307       1       1       1 bash
   2286    1787       1       1       1 python2
   2287    2286       1       1       1 time-helper
   2288    2287       1       1       1 bash
   2289    2288       1       1       1 zsh
   2290    2289       1       1       1 ps
   2291    2289       1       1       1 cat
   2292    2289       1       1       1 cat2

run_snippet zsh bgpipe yes
[background pipeline]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1    2298 sh
      7       1       1       1    2298 bash
     20       7       1       1    2298 bash
   1305      20       1       1    2298 python2
   1306    1305       1       1    2298 time-helper
   1307    1306       1       1    2298 bash
   1787    1307       1       1    2298 bash
   2295    1787       1       1    2298 python2
   2296    2295       1       1    2298 time-helper
   2297    2296       1       1    2298 bash
   2298    2297    2298       1    2298 zsh
   2300    2298    2300       1    2298 ps
   2301    2298    2300       1    2298 cat
   2302    2298    2300       1    2298 cat2

run_snippet zsh bgpipe-lastpipe -
[background pipeline, last is builtin]
PID    PPID    PGID     SID   TPGID COMMAND
1       0       1       1       1 sh
7       1       1       1       1 bash
20       7       1       1       1 bash
1305      20       1       1       1 python2
1306    1305       1       1       1 time-helper
1307    1306       1       1       1 bash
1787    1307       1       1       1 bash
2305    1787       1       1       1 python2
2306    2305       1       1       1 time-helper
2307    2306       1       1       1 bash
2308    2307       1       1       1 zsh
2309    2308       1       1       1 ps
2310    2308       1       1       1 cat2
2311    2308       1       1       1 zsh

run_snippet zsh bgpipe-lastpipe yes
[background pipeline, last is builtin]
PID    PPID    PGID     SID   TPGID COMMAND
1       0       1       1    2317 sh
7       1       1       1    2317 bash
20       7       1       1    2317 bash
1305      20       1       1    2317 python2
1306    1305       1       1    2317 time-helper
1307    1306       1       1    2317 bash
1787    1307       1       1    2317 bash
2314    1787       1       1    2317 python2
2315    2314       1       1    2317 time-helper
2316    2315       1       1    2317 bash
2317    2316    2317       1    2317 zsh
2319    2317    2319       1    2317 ps
2320    2317    2319       1    2317 cat2
2321    2317    2319       1    2317 zsh

run_snippet zsh subshell -
[subshell]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1       1 sh
      7       1       1       1       1 bash
     20       7       1       1       1 bash
   1305      20       1       1       1 python2
   1306    1305       1       1       1 time-helper
   1307    1306       1       1       1 bash
   1787    1307       1       1       1 bash
   2324    1787       1       1       1 python2
   2325    2324       1       1       1 time-helper
   2326    2325       1       1       1 bash
   2327    2326       1       1       1 zsh
   2328    2327       1       1       1 zsh
   2329    2328       1       1       1 ps
ALIVE

run_snippet zsh subshell yes
[subshell]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1    2337 sh
      7       1       1       1    2337 bash
     20       7       1       1    2337 bash
   1305      20       1       1    2337 python2
   1306    1305       1       1    2337 time-helper
   1307    1306       1       1    2337 bash
   1787    1307       1       1    2337 bash
   2332    1787       1       1    2337 python2
   2333    2332       1       1    2337 time-helper
   2334    2333       1       1    2337 bash
   2335    2334    2335       1    2337 zsh
   2337    2335    2337       1    2337 zsh
   2338    2337    2337       1    2337 ps
ALIVE

run_snippet zsh csub -
[command sub]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1       1 sh
      7       1       1       1       1 bash
     20       7       1       1       1 bash
   1305      20       1       1       1 python2
   1306    1305       1       1       1 time-helper
   1307    1306       1       1       1 bash
   1787    1307       1       1       1 bash
   2341    1787       1       1       1 python2
   2342    2341       1       1       1 time-helper
   2343    2342       1       1       1 bash
   2344    2343       1       1       1 zsh
   2345    2344       1       1       1 ps

run_snippet zsh csub yes
[command sub]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1    2351 sh
      7       1       1       1    2351 bash
     20       7       1       1    2351 bash
   1305      20       1       1    2351 python2
   1306    1305       1       1    2351 time-helper
   1307    1306       1       1    2351 bash
   1787    1307       1       1    2351 bash
   2348    1787       1       1    2351 python2
   2349    2348       1       1    2351 time-helper
   2350    2349       1       1    2351 bash
   2351    2350    2351       1    2351 zsh
   2353    2351    2351       1    2351 ps

run_snippet zsh psub -
[process sub]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1       1 sh
      7       1       1       1       1 bash
     20       7       1       1       1 bash
   1305      20       1       1       1 python2
   1306    1305       1       1       1 time-helper
   1307    1306       1       1       1 bash
   1787    1307       1       1       1 bash
   2356    1787       1       1       1 python2
   2357    2356       1       1       1 time-helper
   2358    2357       1       1       1 bash
   2359    2358       1       1       1 zsh
   2360    2359       1       1       1 ps
   2361    2359       1       1       1 cat

run_snippet zsh psub yes
[process sub]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1    2370 sh
      7       1       1       1    2370 bash
     20       7       1       1    2370 bash
   1305      20       1       1    2370 python2
   1306    1305       1       1    2370 time-helper
   1307    1306       1       1    2370 bash
   1787    1307       1       1    2370 bash
   2364    1787       1       1    2370 python2
   2365    2364       1       1    2370 time-helper
   2366    2365       1       1    2370 bash
   2367    2366    2367       1    2370 zsh
   2369    2367    2369       1    2370 ps
   2370    2367    2370       1    2370 cat

run_snippet bin/osh fgproc -
[foreground process]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1       1 sh
      7       1       1       1       1 bash
     20       7       1       1       1 bash
   1305      20       1       1       1 python2
   1306    1305       1       1       1 time-helper
   1307    1306       1       1       1 bash
   1787    1307       1       1       1 bash
   2373    1787       1       1       1 python2
   2374    2373       1       1       1 time-helper
   2375    2374       1       1       1 bash
   2376    2375       1       1       1 python2
   2379    2376       1       1       1 ps

run_snippet bin/osh fgproc yes
[foreground process]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1    2388 sh
      7       1       1       1    2388 bash
     20       7       1       1    2388 bash
   1305      20       1       1    2388 python2
   1306    1305       1       1    2388 time-helper
   1307    1306       1       1    2388 bash
   1787    1307       1       1    2388 bash
   2382    1787       1       1    2388 python2
   2383    2382       1       1    2388 time-helper
   2384    2383       1       1    2388 bash
   2385    2384    2385       1    2388 python2
   2388    2385    2388       1    2388 ps

run_snippet bin/osh bgproc -
[1] Done PID 2397
[background process]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1       1 sh
      7       1       1       1       1 bash
     20       7       1       1       1 bash
   1305      20       1       1       1 python2
   1306    1305       1       1       1 time-helper
   1307    1306       1       1       1 bash
   1787    1307       1       1       1 bash
   2391    1787       1       1       1 python2
   2392    2391       1       1       1 time-helper
   2393    2392       1       1       1 bash
   2394    2393       1       1       1 python2
   2397    2394       1       1       1 ps

run_snippet bin/osh bgproc yes
[1] Done PID 2406
[background process]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1    2403 sh
      7       1       1       1    2403 bash
     20       7       1       1    2403 bash
   1305      20       1       1    2403 python2
   1306    1305       1       1    2403 time-helper
   1307    1306       1       1    2403 bash
   1787    1307       1       1    2403 bash
   2400    1787       1       1    2403 python2
   2401    2400       1       1    2403 time-helper
   2402    2401       1       1    2403 bash
   2403    2402    2403       1    2403 python2
   2406    2403    2406       1    2403 ps

run_snippet bin/osh fgpipe -
[foreground pipeline, last is external]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1       1 sh
      7       1       1       1       1 bash
     20       7       1       1       1 bash
   1305      20       1       1       1 python2
   1306    1305       1       1       1 time-helper
   1307    1306       1       1       1 bash
   1787    1307       1       1       1 bash
   2409    1787       1       1       1 python2
   2410    2409       1       1       1 time-helper
   2411    2410       1       1       1 bash
   2412    2411       1       1       1 python2
   2415    2412       1       1       1 ps
   2416    2412       1       1       1 cat
   2417    2412       1       1       1 cat2

run_snippet bin/osh fgpipe yes
[foreground pipeline, last is external]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1    2426 sh
      7       1       1       1    2426 bash
     20       7       1       1    2426 bash
   1305      20       1       1    2426 python2
   1306    1305       1       1    2426 time-helper
   1307    1306       1       1    2426 bash
   1787    1307       1       1    2426 bash
   2420    1787       1       1    2426 python2
   2421    2420       1       1    2426 time-helper
   2422    2421       1       1    2426 bash
   2423    2422    2423       1    2426 python2
   2426    2423    2426       1    2426 ps
   2427    2423    2426       1    2426 cat
   2428    2423    2426       1    2426 cat2

run_snippet bin/osh fgpipe-lastpipe -
[foreground pipeline, last is builtin]
PID    PPID    PGID     SID   TPGID COMMAND
1       0       1       1       1 sh
7       1       1       1       1 bash
20       7       1       1       1 bash
1305      20       1       1       1 python2
1306    1305       1       1       1 time-helper
1307    1306       1       1       1 bash
1787    1307       1       1       1 bash
2431    1787       1       1       1 python2
2432    2431       1       1       1 time-helper
2433    2432       1       1       1 bash
2434    2433       1       1       1 python2
2437    2434       1       1       1 ps
2438    2434       1       1       1 cat2

run_snippet bin/osh fgpipe-lastpipe yes
[foreground pipeline, last is builtin]
PID    PPID    PGID     SID   TPGID COMMAND
1       0       1       1    2447 sh
7       1       1       1    2447 bash
20       7       1       1    2447 bash
1305      20       1       1    2447 python2
1306    1305       1       1    2447 time-helper
1307    1306       1       1    2447 bash
1787    1307       1       1    2447 bash
2441    1787       1       1    2447 python2
2442    2441       1       1    2447 time-helper
2443    2442       1       1    2447 bash
2444    2443    2444       1    2447 python2
2447    2444    2447       1    2447 ps
2448    2444    2447       1    2447 cat2

run_snippet bin/osh bgpipe -
[1] Done PGID 2457
[background pipeline]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1       1 sh
      7       1       1       1       1 bash
     20       7       1       1       1 bash
   1305      20       1       1       1 python2
   1306    1305       1       1       1 time-helper
   1307    1306       1       1       1 bash
   1787    1307       1       1       1 bash
   2451    1787       1       1       1 python2
   2452    2451       1       1       1 time-helper
   2453    2452       1       1       1 bash
   2454    2453       1       1       1 python2
   2457    2454       1       1       1 ps
   2458    2454       1       1       1 cat
   2459    2454       1       1       1 cat2

run_snippet bin/osh bgpipe yes
[1] Done PGID 2468
[background pipeline]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1    2465 sh
      7       1       1       1    2465 bash
     20       7       1       1    2465 bash
   1305      20       1       1    2465 python2
   1306    1305       1       1    2465 time-helper
   1307    1306       1       1    2465 bash
   1787    1307       1       1    2465 bash
   2462    1787       1       1    2465 python2
   2463    2462       1       1    2465 time-helper
   2464    2463       1       1    2465 bash
   2465    2464    2465       1    2465 python2
   2468    2465    2468       1    2465 ps
   2469    2465    2468       1    2465 cat
   2470    2465    2468       1    2465 cat2

run_snippet bin/osh bgpipe-lastpipe -
[1] Done PGID 2479
[background pipeline, last is builtin]
PID    PPID    PGID     SID   TPGID COMMAND
1       0       1       1       1 sh
7       1       1       1       1 bash
20       7       1       1       1 bash
1305      20       1       1       1 python2
1306    1305       1       1       1 time-helper
1307    1306       1       1       1 bash
1787    1307       1       1       1 bash
2473    1787       1       1       1 python2
2474    2473       1       1       1 time-helper
2475    2474       1       1       1 bash
2476    2475       1       1       1 python2
2479    2476       1       1       1 ps
2480    2476       1       1       1 cat2
2481    2476       1       1       1 python2

run_snippet bin/osh bgpipe-lastpipe yes
[1] Done PGID 2490
[background pipeline, last is builtin]
PID    PPID    PGID     SID   TPGID COMMAND
1       0       1       1    2487 sh
7       1       1       1    2487 bash
20       7       1       1    2487 bash
1305      20       1       1    2487 python2
1306    1305       1       1    2487 time-helper
1307    1306       1       1    2487 bash
1787    1307       1       1    2487 bash
2484    1787       1       1    2487 python2
2485    2484       1       1    2487 time-helper
2486    2485       1       1    2487 bash
2487    2486    2487       1    2487 python2
2490    2487    2490       1    2487 ps
2491    2487    2490       1    2487 cat2
2492    2487    2490       1    2487 python2

run_snippet bin/osh subshell -
[subshell]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1       1 sh
      7       1       1       1       1 bash
     20       7       1       1       1 bash
   1305      20       1       1       1 python2
   1306    1305       1       1       1 time-helper
   1307    1306       1       1       1 bash
   1787    1307       1       1       1 bash
   2495    1787       1       1       1 python2
   2496    2495       1       1       1 time-helper
   2497    2496       1       1       1 bash
   2498    2497       1       1       1 python2
   2501    2498       1       1       1 python2
   2502    2501       1       1       1 ps
ALIVE

run_snippet bin/osh subshell yes
[subshell]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1    2511 sh
      7       1       1       1    2511 bash
     20       7       1       1    2511 bash
   1305      20       1       1    2511 python2
   1306    1305       1       1    2511 time-helper
   1307    1306       1       1    2511 bash
   1787    1307       1       1    2511 bash
   2505    1787       1       1    2511 python2
   2506    2505       1       1    2511 time-helper
   2507    2506       1       1    2511 bash
   2508    2507    2508       1    2511 python2
   2511    2508    2511       1    2511 python2
   2512    2511    2511       1    2511 ps
ALIVE

run_snippet bin/osh csub -
[command sub]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1       1 sh
      7       1       1       1       1 bash
     20       7       1       1       1 bash
   1305      20       1       1       1 python2
   1306    1305       1       1       1 time-helper
   1307    1306       1       1       1 bash
   1787    1307       1       1       1 bash
   2515    1787       1       1       1 python2
   2516    2515       1       1       1 time-helper
   2517    2516       1       1       1 bash
   2518    2517       1       1       1 python2
   2521    2518       1       1       1 ps

run_snippet bin/osh csub yes
[command sub]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1    2527 sh
      7       1       1       1    2527 bash
     20       7       1       1    2527 bash
   1305      20       1       1    2527 python2
   1306    1305       1       1    2527 time-helper
   1307    1306       1       1    2527 bash
   1787    1307       1       1    2527 bash
   2524    1787       1       1    2527 python2
   2525    2524       1       1    2527 time-helper
   2526    2525       1       1    2527 bash
   2527    2526    2527       1    2527 python2
   2530    2527    2527       1    2527 ps

run_snippet bin/osh psub -
[process sub]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1       1 sh
      7       1       1       1       1 bash
     20       7       1       1       1 bash
   1305      20       1       1       1 python2
   1306    1305       1       1       1 time-helper
   1307    1306       1       1       1 bash
   1787    1307       1       1       1 bash
   2533    1787       1       1       1 python2
   2534    2533       1       1       1 time-helper
   2535    2534       1       1       1 bash
   2536    2535       1       1       1 python2
   2539    2536       1       1       1 ps
   2540    2536       1       1       1 cat

run_snippet bin/osh psub yes
[process sub]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1    2550 sh
      7       1       1       1    2550 bash
     20       7       1       1    2550 bash
   1305      20       1       1    2550 python2
   1306    1305       1       1    2550 time-helper
   1307    1306       1       1    2550 bash
   1787    1307       1       1    2550 bash
   2543    1787       1       1    2550 python2
   2544    2543       1       1    2550 time-helper
   2545    2544       1       1    2550 bash
   2546    2545    2546       1    2550 python2
   2549    2546    2549       1    2550 ps
   2550    2546    2550       1    2550 cat

run_snippet _bin/cxx-dbg/osh fgproc -
[foreground process]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1       1 sh
      7       1       1       1       1 bash
     20       7       1       1       1 bash
   1305      20       1       1       1 python2
   1306    1305       1       1       1 time-helper
   1307    1306       1       1       1 bash
   1787    1307       1       1       1 bash
   2553    1787       1       1       1 python2
   2554    2553       1       1       1 time-helper
   2555    2554       1       1       1 bash
   2556    2555       1       1       1 osh
   2557    2556       1       1       1 ps

run_snippet _bin/cxx-dbg/osh fgproc yes
[foreground process]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1    2564 sh
      7       1       1       1    2564 bash
     20       7       1       1    2564 bash
   1305      20       1       1    2564 python2
   1306    1305       1       1    2564 time-helper
   1307    1306       1       1    2564 bash
   1787    1307       1       1    2564 bash
   2560    1787       1       1    2564 python2
   2561    2560       1       1    2564 time-helper
   2562    2561       1       1    2564 bash
   2563    2562    2563       1    2564 osh
   2564    2563    2564       1    2564 ps

run_snippet _bin/cxx-dbg/osh bgproc -
[1] Done PID 2571
[background process]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1       1 sh
      7       1       1       1       1 bash
     20       7       1       1       1 bash
   1305      20       1       1       1 python2
   1306    1305       1       1       1 time-helper
   1307    1306       1       1       1 bash
   1787    1307       1       1       1 bash
   2567    1787       1       1       1 python2
   2568    2567       1       1       1 time-helper
   2569    2568       1       1       1 bash
   2570    2569       1       1       1 osh
   2571    2570       1       1       1 ps

run_snippet _bin/cxx-dbg/osh bgproc yes
[1] Done PID 2578
[background process]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1    2577 sh
      7       1       1       1    2577 bash
     20       7       1       1    2577 bash
   1305      20       1       1    2577 python2
   1306    1305       1       1    2577 time-helper
   1307    1306       1       1    2577 bash
   1787    1307       1       1    2577 bash
   2574    1787       1       1    2577 python2
   2575    2574       1       1    2577 time-helper
   2576    2575       1       1    2577 bash
   2577    2576    2577       1    2577 osh
   2578    2577    2578       1    2577 ps

run_snippet _bin/cxx-dbg/osh fgpipe -
[foreground pipeline, last is external]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1       1 sh
      7       1       1       1       1 bash
     20       7       1       1       1 bash
   1305      20       1       1       1 python2
   1306    1305       1       1       1 time-helper
   1307    1306       1       1       1 bash
   1787    1307       1       1       1 bash
   2581    1787       1       1       1 python2
   2582    2581       1       1       1 time-helper
   2583    2582       1       1       1 bash
   2584    2583       1       1       1 osh
   2585    2584       1       1       1 ps
   2586    2584       1       1       1 cat
   2587    2584       1       1       1 cat2

run_snippet _bin/cxx-dbg/osh fgpipe yes
[foreground pipeline, last is external]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1    2594 sh
      7       1       1       1    2594 bash
     20       7       1       1    2594 bash
   1305      20       1       1    2594 python2
   1306    1305       1       1    2594 time-helper
   1307    1306       1       1    2594 bash
   1787    1307       1       1    2594 bash
   2590    1787       1       1    2594 python2
   2591    2590       1       1    2594 time-helper
   2592    2591       1       1    2594 bash
   2593    2592    2593       1    2594 osh
   2594    2593    2594       1    2594 ps
   2595    2593    2594       1    2594 cat
   2596    2593    2594       1    2594 cat2

run_snippet _bin/cxx-dbg/osh fgpipe-lastpipe -
[foreground pipeline, last is builtin]
PID    PPID    PGID     SID   TPGID COMMAND
1       0       1       1       1 sh
7       1       1       1       1 bash
20       7       1       1       1 bash
1305      20       1       1       1 python2
1306    1305       1       1       1 time-helper
1307    1306       1       1       1 bash
1787    1307       1       1       1 bash
2599    1787       1       1       1 python2
2600    2599       1       1       1 time-helper
2601    2600       1       1       1 bash
2602    2601       1       1       1 osh
2603    2602       1       1       1 ps
2604    2602       1       1       1 cat2

run_snippet _bin/cxx-dbg/osh fgpipe-lastpipe yes
[foreground pipeline, last is builtin]
PID    PPID    PGID     SID   TPGID COMMAND
1       0       1       1    2611 sh
7       1       1       1    2611 bash
20       7       1       1    2611 bash
1305      20       1       1    2611 python2
1306    1305       1       1    2611 time-helper
1307    1306       1       1    2611 bash
1787    1307       1       1    2611 bash
2607    1787       1       1    2611 python2
2608    2607       1       1    2611 time-helper
2609    2608       1       1    2611 bash
2610    2609    2610       1    2611 osh
2611    2610    2611       1    2611 ps
2612    2610    2611       1    2611 cat2

run_snippet _bin/cxx-dbg/osh bgpipe -
[1] Done PGID 2619
[background pipeline]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1       1 sh
      7       1       1       1       1 bash
     20       7       1       1       1 bash
   1305      20       1       1       1 python2
   1306    1305       1       1       1 time-helper
   1307    1306       1       1       1 bash
   1787    1307       1       1       1 bash
   2615    1787       1       1       1 python2
   2616    2615       1       1       1 time-helper
   2617    2616       1       1       1 bash
   2618    2617       1       1       1 osh
   2619    2618       1       1       1 ps
   2620    2618       1       1       1 cat
   2621    2618       1       1       1 cat2

run_snippet _bin/cxx-dbg/osh bgpipe yes
[1] Done PGID 2628
[background pipeline]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1    2627 sh
      7       1       1       1    2627 bash
     20       7       1       1    2627 bash
   1305      20       1       1    2627 python2
   1306    1305       1       1    2627 time-helper
   1307    1306       1       1    2627 bash
   1787    1307       1       1    2627 bash
   2624    1787       1       1    2627 python2
   2625    2624       1       1    2627 time-helper
   2626    2625       1       1    2627 bash
   2627    2626    2627       1    2627 osh
   2628    2627    2628       1    2627 ps
   2629    2627    2628       1    2627 cat
   2630    2627    2628       1    2627 cat2

run_snippet _bin/cxx-dbg/osh bgpipe-lastpipe -
[1] Done PGID 2637
[background pipeline, last is builtin]
PID    PPID    PGID     SID   TPGID COMMAND
1       0       1       1       1 sh
7       1       1       1       1 bash
20       7       1       1       1 bash
1305      20       1       1       1 python2
1306    1305       1       1       1 time-helper
1307    1306       1       1       1 bash
1787    1307       1       1       1 bash
2633    1787       1       1       1 python2
2634    2633       1       1       1 time-helper
2635    2634       1       1       1 bash
2636    2635       1       1       1 osh
2637    2636       1       1       1 ps
2638    2636       1       1       1 cat2
2639    2636       1       1       1 osh

run_snippet _bin/cxx-dbg/osh bgpipe-lastpipe yes
[1] Done PGID 2646
[background pipeline, last is builtin]
PID    PPID    PGID     SID   TPGID COMMAND
1       0       1       1    2645 sh
7       1       1       1    2645 bash
20       7       1       1    2645 bash
1305      20       1       1    2645 python2
1306    1305       1       1    2645 time-helper
1307    1306       1       1    2645 bash
1787    1307       1       1    2645 bash
2642    1787       1       1    2645 python2
2643    2642       1       1    2645 time-helper
2644    2643       1       1    2645 bash
2645    2644    2645       1    2645 osh
2646    2645    2646       1    2645 ps
2647    2645    2646       1    2645 cat2
2648    2645    2646       1    2645 osh

run_snippet _bin/cxx-dbg/osh subshell -
[subshell]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1       1 sh
      7       1       1       1       1 bash
     20       7       1       1       1 bash
   1305      20       1       1       1 python2
   1306    1305       1       1       1 time-helper
   1307    1306       1       1       1 bash
   1787    1307       1       1       1 bash
   2651    1787       1       1       1 python2
   2652    2651       1       1       1 time-helper
   2653    2652       1       1       1 bash
   2654    2653       1       1       1 osh
   2655    2654       1       1       1 osh
   2656    2655       1       1       1 ps
ALIVE

run_snippet _bin/cxx-dbg/osh subshell yes
[subshell]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1    2663 sh
      7       1       1       1    2663 bash
     20       7       1       1    2663 bash
   1305      20       1       1    2663 python2
   1306    1305       1       1    2663 time-helper
   1307    1306       1       1    2663 bash
   1787    1307       1       1    2663 bash
   2659    1787       1       1    2663 python2
   2660    2659       1       1    2663 time-helper
   2661    2660       1       1    2663 bash
   2662    2661    2662       1    2663 osh
   2663    2662    2663       1    2663 osh
   2664    2663    2663       1    2663 ps
ALIVE

run_snippet _bin/cxx-dbg/osh csub -
[command sub]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1       1 sh
      7       1       1       1       1 bash
     20       7       1       1       1 bash
   1305      20       1       1       1 python2
   1306    1305       1       1       1 time-helper
   1307    1306       1       1       1 bash
   1787    1307       1       1       1 bash
   2667    1787       1       1       1 python2
   2668    2667       1       1       1 time-helper
   2669    2668       1       1       1 bash
   2670    2669       1       1       1 osh
   2671    2670       1       1       1 ps

run_snippet _bin/cxx-dbg/osh csub yes
[command sub]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1    2677 sh
      7       1       1       1    2677 bash
     20       7       1       1    2677 bash
   1305      20       1       1    2677 python2
   1306    1305       1       1    2677 time-helper
   1307    1306       1       1    2677 bash
   1787    1307       1       1    2677 bash
   2674    1787       1       1    2677 python2
   2675    2674       1       1    2677 time-helper
   2676    2675       1       1    2677 bash
   2677    2676    2677       1    2677 osh
   2678    2677    2677       1    2677 ps

run_snippet _bin/cxx-dbg/osh psub -
[process sub]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1       1 sh
      7       1       1       1       1 bash
     20       7       1       1       1 bash
   1305      20       1       1       1 python2
   1306    1305       1       1       1 time-helper
   1307    1306       1       1       1 bash
   1787    1307       1       1       1 bash
   2681    1787       1       1       1 python2
   2682    2681       1       1       1 time-helper
   2683    2682       1       1       1 bash
   2684    2683       1       1       1 osh
   2685    2684       1       1       1 ps
   2686    2684       1       1       1 cat

run_snippet _bin/cxx-dbg/osh psub yes
[process sub]
    PID    PPID    PGID     SID   TPGID COMMAND
      1       0       1       1    2694 sh
      7       1       1       1    2694 bash
     20       7       1       1    2694 bash
   1305      20       1       1    2694 python2
   1306    1305       1       1    2694 time-helper
   1307    1306       1       1    2694 bash
   1787    1307       1       1    2694 bash
   2689    1787       1       1    2694 python2
   2690    2689       1       1    2694 time-helper
   2691    2690       1       1    2694 bash
   2692    2691    2692       1    2694 osh
   2693    2692    2693       1    2694 ps
   2694    2692    2694       1    2694 cat

Wrote _tmp/process-table/index.html