### test --env _, env_parallel for different shells par_zsh_underscore ### zsh par_zsh_underscore ### Testing of --env _ par_zsh_underscore variables in aliases in and arrays in functions work par_zsh_underscore variables in aliases in and arrays in functions work par_zsh_underscore variables in aliases in and arrays in functions work par_zsh_underscore variables in aliases in and arrays in functions work par_zsh_underscore variables in aliases in and arrays in functions work par_zsh_underscore variables in aliases in and arrays in functions work par_zsh_underscore (eval):1: command not found: not_copied_alias par_zsh_underscore (eval):1: command not found: not_copied_func par_zsh_underscore BAD error=OK par_zsh_underscore error=OK par_zsh_underscore aliases in and arrays in functions work par_zsh_underscore aliases in and arrays in functions work par_zsh_underscore aliases in functions work par_zsh_underscore aliases in functions work par_zsh_underscore (eval):1: command not found: myecho par_zsh_underscore OK if no .^^^^^^^^^^^^^^^^^^^^^^^^^ myecho par_zsh_underscore (eval):1: command not found: myecho par_zsh_underscore OK if no .^^^^^^^^^^^^^^^^^^^^^^^^^ myecho par_zsh_underscore zsh:1: command not found: myfunc par_zsh_underscore OK if no .^^^^^^^^^^^^^^^^^^^^^^^^^ myfunc par_zsh_underscore zsh:1: command not found: myfunc par_zsh_underscore OK if no .^^^^^^^^^^^^^^^^^^^^^^^^^ myfunc par_zsh_parset parset par_zsh_parset ### parset into array par_zsh_parset foo bar baz par_zsh_parset ### parset into vars with comma par_zsh_parset foo bar baz par_zsh_parset ### parset into vars with space par_zsh_parset foo bar baz par_zsh_parset ### parset with newlines par_zsh_parset 1 par_zsh_parset 1 par_zsh_parset 2 par_zsh_parset 1 par_zsh_parset 2 par_zsh_parset 3 par_zsh_parset ### parset into indexed array vars par_zsh_parset foo bar baz par_zsh_parset foo bar baz par_zsh_parset ### env_parset par_zsh_parset myecho myvar myarr 0 myfun foo par_zsh_parset myecho myvar myarr 0 myfun bar par_zsh_parset myecho myvar myarr 0 myfun baz par_zsh_parset myecho myvar myarr 0 myfun foo par_zsh_parset myecho myvar myarr 0 myfun bar par_zsh_parset myecho myvar myarr 0 myfun baz par_zsh_parset myecho myvar myarr 0 myfun foo par_zsh_parset myecho myvar myarr 0 myfun bar par_zsh_parset myecho myvar myarr 0 myfun baz par_zsh_parset newline1 par_zsh_parset newline2 par_zsh_parset 1 par_zsh_parset newline1 par_zsh_parset newline2 par_zsh_parset 1 par_zsh_parset 2 par_zsh_parset newline1 par_zsh_parset newline2 par_zsh_parset 1 par_zsh_parset 2 par_zsh_parset 3 par_zsh_parset myecho myvar myarr 0 myfun foo myecho myvar myarr 0 myfun bar myecho myvar myarr 0 myfun baz par_zsh_parset myecho myvar myarr 0 myfun foo myecho myvar myarr 0 myfun bar myecho myvar myarr 0 myfun baz par_zsh_parset Exit value 2 = 2 par_zsh_parset Exit value 2 = 2 par_zsh_man ### zsh par_zsh_man ### From man env_parallel par_zsh_man aliases with = & " ! ' work par_zsh_man aliases with = & " ! ' work par_zsh_man aliases with = & " ! ' work par_zsh_man aliases with = & " ! ' work par_zsh_man aliases with = & " ! ' work par_zsh_man multiline par_zsh_man aliases with = & " ! ' work par_zsh_man multiline par_zsh_man aliases with = & " ! ' work par_zsh_man multiline par_zsh_man aliases with = & " ! ' work par_zsh_man multiline par_zsh_man aliases with = & " ! ' work par_zsh_man multiline par_zsh_man aliases with = & " ! ' work par_zsh_man functions with = & " ! ' work par_zsh_man functions with = & " ! ' work par_zsh_man functions with = & " ! ' work par_zsh_man functions with = & " ! ' work par_zsh_man functions with = & " ! ' work par_zsh_man variables with = & " ! ' work par_zsh_man variables with = & " ! ' work par_zsh_man variables with = & " ! ' work par_zsh_man variables with = & " ! ' work par_zsh_man variables with = & " ! ' work par_zsh_man multiline par_zsh_man variables with = & " ! ' work par_zsh_man multiline par_zsh_man variables with = & " ! ' work par_zsh_man multiline par_zsh_man variables with = & " ! ' work par_zsh_man multiline par_zsh_man variables with = & " ! ' work par_zsh_man multiline par_zsh_man variables with = & " ! ' work par_zsh_man arrays with = & " ! ' work, too par_zsh_man arrays par_zsh_man with = & " ! ' par_zsh_man work, par_zsh_man too par_zsh_man arrays par_zsh_man with = & " ! ' par_zsh_man work, par_zsh_man too par_zsh_man arrays par_zsh_man with = & " ! ' par_zsh_man work, par_zsh_man too par_zsh_man arrays par_zsh_man with = & " ! ' par_zsh_man work, par_zsh_man too par_zsh_man multi par_zsh_man level par_zsh_man env_parallel par_zsh_man exit value 2 should be 2 par_zsh_man Unknown option: no-such-option par_zsh_man exit value 255 should be 255 par_zsh_funky par_zsh_funky par_zsh_funky C-] !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~M-M-]-funky par_zsh_funky par_zsh_funky C-] !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~M-M-]-funky par_zsh_funky space 6 par_zsh_funky space 6 par_zsh_funky ' ' par_zsh_funky ' par_zsh_funky  !"#$%&'"'"'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~' par_zsh_funky 3 arg alias_works par_zsh_funky 3 arg alias_works_over_ssh par_zsh_funky Funky- par_zsh_funky Funky- par_zsh_funky assoc_val_a par_zsh_funky assoc_val_a par_zsh_funky function_works par_zsh_funky function_works_over_ssh par_zsh_funky myvar works par_zsh_funky myvar works par_zsh_environment_too_big bug #50815: env_parallel should warn if the environment is too big par_zsh_environment_too_big OK_bigvar par_zsh_environment_too_big OK_bigvar_remote par_zsh_environment_too_big OK_bigvar_quote par_zsh_environment_too_big OK_bigvar_quote_remote par_zsh_environment_too_big OK_bigfunc par_zsh_environment_too_big OK_bigfunc_remote par_zsh_environment_too_big OK_bigfunc_quote par_zsh_environment_too_big OK_bigfunc_quote_remote par_zsh_environment_too_big Rest should fail par_zsh_environment_too_big _which_PAR:XXX: argument list too long: perl par_zsh_environment_too_big env_parallel: Error: Your environment is too big. par_zsh_environment_too_big env_parallel: Error: You can try 3 different approaches: par_zsh_environment_too_big env_parallel: Error: 1. Run 'env_parallel --session' before you set par_zsh_environment_too_big env_parallel: Error: variables or define functions. par_zsh_environment_too_big env_parallel: Error: 2. Use --env and only mention the names to copy. par_zsh_environment_too_big env_parallel: Error: 3. Try running this in a clean environment once: par_zsh_environment_too_big env_parallel: Error: env_parallel --record-env par_zsh_environment_too_big env_parallel: Error: And then use '--env _' par_zsh_environment_too_big env_parallel: Error: For details see: man env_parallel par_zsh_environment_too_big _which_PAR:XXX: argument list too long: perl par_zsh_environment_too_big env_parallel: Error: Your environment is too big. par_zsh_environment_too_big env_parallel: Error: You can try 3 different approaches: par_zsh_environment_too_big env_parallel: Error: 1. Run 'env_parallel --session' before you set par_zsh_environment_too_big env_parallel: Error: variables or define functions. par_zsh_environment_too_big env_parallel: Error: 2. Use --env and only mention the names to copy. par_zsh_environment_too_big env_parallel: Error: 3. Try running this in a clean environment once: par_zsh_environment_too_big env_parallel: Error: env_parallel --record-env par_zsh_environment_too_big env_parallel: Error: And then use '--env _' par_zsh_environment_too_big env_parallel: Error: For details see: man env_parallel par_zsh_environment_too_big _which_PAR:XXX: argument list too long: perl par_zsh_environment_too_big env_parallel: Error: Your environment is too big. par_zsh_environment_too_big env_parallel: Error: You can try 3 different approaches: par_zsh_environment_too_big env_parallel: Error: 1. Run 'env_parallel --session' before you set par_zsh_environment_too_big env_parallel: Error: variables or define functions. par_zsh_environment_too_big env_parallel: Error: 2. Use --env and only mention the names to copy. par_zsh_environment_too_big env_parallel: Error: 3. Try running this in a clean environment once: par_zsh_environment_too_big env_parallel: Error: env_parallel --record-env par_zsh_environment_too_big env_parallel: Error: And then use '--env _' par_zsh_environment_too_big env_parallel: Error: For details see: man env_parallel par_zsh_environment_too_big _which_PAR:XXX: argument list too long: perl par_zsh_environment_too_big env_parallel: Error: Your environment is too big. par_zsh_environment_too_big env_parallel: Error: You can try 3 different approaches: par_zsh_environment_too_big env_parallel: Error: 1. Run 'env_parallel --session' before you set par_zsh_environment_too_big env_parallel: Error: variables or define functions. par_zsh_environment_too_big env_parallel: Error: 2. Use --env and only mention the names to copy. par_zsh_environment_too_big env_parallel: Error: 3. Try running this in a clean environment once: par_zsh_environment_too_big env_parallel: Error: env_parallel --record-env par_zsh_environment_too_big env_parallel: Error: And then use '--env _' par_zsh_environment_too_big env_parallel: Error: For details see: man env_parallel par_zsh_environment_too_big _which_PAR:XXX: argument list too long: perl par_zsh_environment_too_big env_parallel: Error: Your environment is too big. par_zsh_environment_too_big env_parallel: Error: You can try 3 different approaches: par_zsh_environment_too_big env_parallel: Error: 1. Run 'env_parallel --session' before you set par_zsh_environment_too_big env_parallel: Error: variables or define functions. par_zsh_environment_too_big env_parallel: Error: 2. Use --env and only mention the names to copy. par_zsh_environment_too_big env_parallel: Error: 3. Try running this in a clean environment once: par_zsh_environment_too_big env_parallel: Error: env_parallel --record-env par_zsh_environment_too_big env_parallel: Error: And then use '--env _' par_zsh_environment_too_big env_parallel: Error: For details see: man env_parallel par_zsh_environment_too_big _which_PAR:XXX: argument list too long: perl par_zsh_environment_too_big env_parallel: Error: Your environment is too big. par_zsh_environment_too_big env_parallel: Error: You can try 3 different approaches: par_zsh_environment_too_big env_parallel: Error: 1. Run 'env_parallel --session' before you set par_zsh_environment_too_big env_parallel: Error: variables or define functions. par_zsh_environment_too_big env_parallel: Error: 2. Use --env and only mention the names to copy. par_zsh_environment_too_big env_parallel: Error: 3. Try running this in a clean environment once: par_zsh_environment_too_big env_parallel: Error: env_parallel --record-env par_zsh_environment_too_big env_parallel: Error: And then use '--env _' par_zsh_environment_too_big env_parallel: Error: For details see: man env_parallel par_zsh_environment_too_big _which_PAR:XXX: argument list too long: perl par_zsh_environment_too_big env_parallel: Error: Your environment is too big. par_zsh_environment_too_big env_parallel: Error: You can try 3 different approaches: par_zsh_environment_too_big env_parallel: Error: 1. Run 'env_parallel --session' before you set par_zsh_environment_too_big env_parallel: Error: variables or define functions. par_zsh_environment_too_big env_parallel: Error: 2. Use --env and only mention the names to copy. par_zsh_environment_too_big env_parallel: Error: 3. Try running this in a clean environment once: par_zsh_environment_too_big env_parallel: Error: env_parallel --record-env par_zsh_environment_too_big env_parallel: Error: And then use '--env _' par_zsh_environment_too_big env_parallel: Error: For details see: man env_parallel par_zsh_environment_too_big _which_PAR:XXX: argument list too long: perl par_zsh_environment_too_big env_parallel: Error: Your environment is too big. par_zsh_environment_too_big env_parallel: Error: You can try 3 different approaches: par_zsh_environment_too_big env_parallel: Error: 1. Run 'env_parallel --session' before you set par_zsh_environment_too_big env_parallel: Error: variables or define functions. par_zsh_environment_too_big env_parallel: Error: 2. Use --env and only mention the names to copy. par_zsh_environment_too_big env_parallel: Error: 3. Try running this in a clean environment once: par_zsh_environment_too_big env_parallel: Error: env_parallel --record-env par_zsh_environment_too_big env_parallel: Error: And then use '--env _' par_zsh_environment_too_big env_parallel: Error: For details see: man env_parallel par_zsh_env_parallel_session ### Test env_parallel --session par_zsh_env_parallel_session ### level0 should be hidden, level1 should be transferred par_zsh_env_parallel_session par_zsh_env_parallel_session fail par_zsh_env_parallel_session (eval):1: command not found: level0func par_zsh_env_parallel_session (eval):1: command not found: level0alias par_zsh_env_parallel_session par_zsh_env_parallel_session fail par_zsh_env_parallel_session (eval):1: command not found: level0func par_zsh_env_parallel_session (eval):1: command not found: level0alias par_zsh_env_parallel_session l1var par_zsh_env_parallel_session l1func par_zsh_env_parallel_session l1alias par_zsh_env_parallel_session level1 array OK par_zsh_env_parallel_session l1var par_zsh_env_parallel_session l1func par_zsh_env_parallel_session l1alias par_zsh_env_parallel_session level1 array OK par_zsh_env_parallel_session ### level0+1 should be hidden, level2 should be transferred par_zsh_env_parallel_session par_zsh_env_parallel_session fail par_zsh_env_parallel_session (eval):1: command not found: level0func par_zsh_env_parallel_session (eval):1: command not found: level0alias par_zsh_env_parallel_session par_zsh_env_parallel_session fail par_zsh_env_parallel_session (eval):1: command not found: level0func par_zsh_env_parallel_session (eval):1: command not found: level0alias par_zsh_env_parallel_session par_zsh_env_parallel_session fail par_zsh_env_parallel_session (eval):1: command not found: level1func par_zsh_env_parallel_session (eval):1: command not found: level1alias par_zsh_env_parallel_session par_zsh_env_parallel_session fail par_zsh_env_parallel_session (eval):1: command not found: level1func par_zsh_env_parallel_session (eval):1: command not found: level1alias par_zsh_env_parallel_session l2var par_zsh_env_parallel_session l2func par_zsh_env_parallel_session l2alias par_zsh_env_parallel_session level2 array OK par_zsh_env_parallel_session l2var par_zsh_env_parallel_session l2func par_zsh_env_parallel_session l2alias par_zsh_env_parallel_session level2 array OK par_zsh_env_parallel_session ### level0 should be hidden, level1+2 should be transferred par_zsh_env_parallel_session par_zsh_env_parallel_session fail par_zsh_env_parallel_session (eval):1: command not found: level0func par_zsh_env_parallel_session (eval):1: command not found: level0alias par_zsh_env_parallel_session par_zsh_env_parallel_session fail par_zsh_env_parallel_session (eval):1: command not found: level0func par_zsh_env_parallel_session (eval):1: command not found: level0alias par_zsh_env_parallel_session l1var par_zsh_env_parallel_session l1func par_zsh_env_parallel_session l1alias par_zsh_env_parallel_session level1 array OK par_zsh_env_parallel_session l1var par_zsh_env_parallel_session l1func par_zsh_env_parallel_session l1alias par_zsh_env_parallel_session level1 array OK par_zsh_env_parallel_session l2var par_zsh_env_parallel_session l2func par_zsh_env_parallel_session l2alias par_zsh_env_parallel_session level2 array OK par_zsh_env_parallel_session l2var par_zsh_env_parallel_session l2func par_zsh_env_parallel_session l2alias par_zsh_env_parallel_session level2 array OK par_zsh_env_parallel_session ### level0+1+2 should be transferred par_zsh_env_parallel_session l0var par_zsh_env_parallel_session l0func par_zsh_env_parallel_session l0alias par_zsh_env_parallel_session level0 array OK par_zsh_env_parallel_session l0var par_zsh_env_parallel_session l0func par_zsh_env_parallel_session l0alias par_zsh_env_parallel_session level0 array OK par_zsh_env_parallel_session l1var par_zsh_env_parallel_session l1func par_zsh_env_parallel_session l1alias par_zsh_env_parallel_session level1 array OK par_zsh_env_parallel_session l1var par_zsh_env_parallel_session l1func par_zsh_env_parallel_session l1alias par_zsh_env_parallel_session level1 array OK par_zsh_env_parallel_session l2var par_zsh_env_parallel_session l2func par_zsh_env_parallel_session l2alias par_zsh_env_parallel_session level2 array OK par_zsh_env_parallel_session l2var par_zsh_env_parallel_session l2func par_zsh_env_parallel_session l2alias par_zsh_env_parallel_session level2 array OK par_zsh_env_parallel_session zsh:1: command not found: aliasbefore par_zsh_env_parallel_session zsh:1: command not found: aliasbefore par_zsh_env_parallel_session zsh:1: command not found: funcbefore par_zsh_env_parallel_session zsh:1: command not found: funcbefore par_zsh_env_parallel_session no_before par_zsh_env_parallel_session no_before par_zsh_env_parallel_session no_before par_zsh_env_parallel_session no_before par_zsh_env_parallel_session after aliasafter_OK par_zsh_env_parallel_session after aliasafter_OK par_zsh_env_parallel_session after funcafter_OK par_zsh_env_parallel_session after funcafter_OK par_zsh_env_parallel_session after varafter_OK par_zsh_env_parallel_session after varafter_OK par_zsh_env_parallel_session array after arrayafter_OK par_zsh_env_parallel_session array after arrayafter_OK par_zsh_env_parallel OK par_zsh_env_parallel OK par_zsh_env_parallel alias line 1 par_zsh_env_parallel alias line 1 par_zsh_env_parallel alias line 2 par_zsh_env_parallel alias line 2 par_zsh_env_parallel alias line 3 par_zsh_env_parallel alias line 3 par_zsh_env_parallel alias2 line 1 par_zsh_env_parallel alias2 line 1 par_zsh_env_parallel alias2 line 2 par_zsh_env_parallel alias2 line 2 par_zsh_env_parallel bug #50435: Remote fifo broke in 20150522 par_zsh_env_parallel bug #52534: Tail of multiline alias is ignored par_zsh_env_parallel data from stdin par_zsh_env_parallel data from stdin par_tcsh_underscore ### tcsh par_tcsh_underscore ### Testing of --env _ par_tcsh_underscore par_tcsh_underscore #: Command not found. par_tcsh_underscore par_tcsh_underscore variables and arrays in aliases work par_tcsh_underscore par_tcsh_underscore variables and arrays in aliases work par_tcsh_underscore par_tcsh_underscore variables and arrays in aliases work par_tcsh_underscore par_tcsh_underscore variables and arrays in aliases work par_tcsh_underscore par_tcsh_underscore variables and arrays in aliases work par_tcsh_underscore par_tcsh_underscore variables and arrays in aliases work par_tcsh_underscore par_tcsh_underscore myvar: Undefined variable. par_tcsh_underscore par_tcsh_underscore myvar: Undefined variable. par_tcsh_underscore par_tcsh_underscore myarray: Undefined variable. par_tcsh_underscore par_tcsh_underscore myarray: Undefined variable. par_tcsh_underscore par_tcsh_underscore myecho: Command not found. par_tcsh_underscore par_tcsh_underscore OK ^^^^^^^^^^^^^^^^^ if no myecho par_tcsh_underscore par_tcsh_underscore myecho: Command not found. par_tcsh_underscore par_tcsh_underscore OK ^^^^^^^^^^^^^^^^^ if no myecho par_tcsh_underscore par_tcsh_underscore Connection to lo closed. par_tcsh_underscore par_tcsh_parset Not implemented par_tcsh_man ### tcsh par_tcsh_man ### From man env_parallel par_tcsh_man par_tcsh_man #: Command not found. par_tcsh_man par_tcsh_man aliases with = & " work par_tcsh_man par_tcsh_man aliases with = & " work par_tcsh_man par_tcsh_man aliases with = & " work par_tcsh_man par_tcsh_man aliases with = & " work par_tcsh_man par_tcsh_man Functions not supported par_tcsh_man par_tcsh_man #: Command not found. par_tcsh_man par_tcsh_man #: Command not found. par_tcsh_man par_tcsh_man variables with = & " work par_tcsh_man par_tcsh_man variables with = & " work par_tcsh_man par_tcsh_man variables with = & " work par_tcsh_man par_tcsh_man variables with = & " work par_tcsh_man par_tcsh_man #: Command not found. par_tcsh_man par_tcsh_man arrays par_tcsh_man par_tcsh_man with=&"' par_tcsh_man par_tcsh_man work, par_tcsh_man par_tcsh_man too par_tcsh_man par_tcsh_man arrays par_tcsh_man par_tcsh_man with=&"' par_tcsh_man par_tcsh_man work, par_tcsh_man par_tcsh_man too par_tcsh_man par_tcsh_man arrays par_tcsh_man par_tcsh_man with=&"' par_tcsh_man par_tcsh_man work, par_tcsh_man par_tcsh_man too par_tcsh_man par_tcsh_man arrays par_tcsh_man par_tcsh_man with=&"' par_tcsh_man par_tcsh_man work, par_tcsh_man par_tcsh_man too par_tcsh_man par_tcsh_man Segmentation faults? Are you running bsd-csh version 20110502-3? par_tcsh_man par_tcsh_man multi par_tcsh_man par_tcsh_man level par_tcsh_man par_tcsh_man env_parallel par_tcsh_man par_tcsh_man exit value 2 should be 2 par_tcsh_man par_tcsh_man Unknown option: no-such-option par_tcsh_man par_tcsh_man Usage: par_tcsh_man par_tcsh_man par_tcsh_man par_tcsh_man parallel [options] [command [arguments]] < list_of_arguments par_tcsh_man par_tcsh_man parallel [options] [command [arguments]] (::: arguments|:::: argfile(s))... par_tcsh_man par_tcsh_man cat ... | parallel --pipe [options] [command [arguments]] par_tcsh_man par_tcsh_man par_tcsh_man par_tcsh_man -j n Run n jobs in parallel par_tcsh_man par_tcsh_man -k Keep same order par_tcsh_man par_tcsh_man -X Multiple arguments with context replace par_tcsh_man par_tcsh_man --colsep regexp Split input on regexp for positional replacements par_tcsh_man par_tcsh_man {} {.} {/} {/.} {#} {%} {= perl code =} Replacement strings par_tcsh_man par_tcsh_man {3} {3.} {3/} {3/.} {=3 perl code =} Positional replacement strings par_tcsh_man par_tcsh_man With --plus: {} = {+/}/{/} = {.}.{+.} = {+/}/{/.}.{+.} = {..}.{+..} = par_tcsh_man par_tcsh_man {+/}/{/..}.{+..} = {...}.{+...} = {+/}/{/...}.{+...} par_tcsh_man par_tcsh_man par_tcsh_man par_tcsh_man -S sshlogin Example: foo@server.example.com par_tcsh_man par_tcsh_man --slf .. Use ~/.parallel/sshloginfile as the list of sshlogins par_tcsh_man par_tcsh_man --trc {}.bar Shorthand for --transfer --return {}.bar --cleanup par_tcsh_man par_tcsh_man --onall Run the given command with argument on all sshlogins par_tcsh_man par_tcsh_man --nonall Run the given command with no arguments on all sshlogins par_tcsh_man par_tcsh_man par_tcsh_man par_tcsh_man --pipe Split stdin (standard input) to multiple jobs. par_tcsh_man par_tcsh_man --recend str Record end separator for --pipe. par_tcsh_man par_tcsh_man --recstart str Record start separator for --pipe. par_tcsh_man par_tcsh_man par_tcsh_man par_tcsh_man GNU Parallel can do much more. See 'man parallel' for details par_tcsh_man par_tcsh_man par_tcsh_man par_tcsh_man Academic tradition requires you to cite works you base your article on. par_tcsh_man par_tcsh_man If you use programs that use GNU Parallel to process data for an article in a par_tcsh_man par_tcsh_man scientific publication, please cite: par_tcsh_man par_tcsh_man par_tcsh_man par_tcsh_man par_tcsh_man par_tcsh_man This helps funding further development; AND IT WON'T COST YOU A CENT. par_tcsh_man par_tcsh_man If you pay 10000 EUR you should feel free to use GNU Parallel without citing. par_tcsh_man par_tcsh_man par_tcsh_man par_tcsh_man exit value 255 should be 255 par_tcsh_man par_tcsh_man Connection to lo closed. par_tcsh_man par_tcsh_funky par_tcsh_funky par_tcsh_funky par_tcsh_funky 3 arg alias_works par_tcsh_funky 3 arg alias_works_over_ssh par_tcsh_funky Funky- par_tcsh_funky  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~-funky alias_var_works par_tcsh_funky Funky- par_tcsh_funky  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~-funky alias_var_works_over_ssh par_tcsh_funky \\\\\\\\ \ \ \ \ par_tcsh_funky \\\\\\\\\\\\\\ \!\"\#\$%\&\'\(\)\*+,-./0123456789:\;\<\=\>\?@ABCDEFGHIJKLMNOPQRSTUVWXYZ\[\\\]\^_\`abcdefghijklmnopqrstuvwxyz\{\|\}\~\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ par_tcsh_funky func_echo: Command not found. par_tcsh_funky func_echo: Command not found. par_tcsh_funky myvar works par_tcsh_funky myvar works par_tcsh_funky space special chars problem par_tcsh_funky space special chars problem par_tcsh_environment_too_big Not implemented par_tcsh_env_parallel_session Not implemented par_tcsh_env_parallel OK par_tcsh_env_parallel OK par_tcsh_env_parallel bug #50435: Remote fifo broke in 20150522 par_tcsh_env_parallel data from stdin par_tcsh_env_parallel data from stdin par_sh_underscore ### sh par_sh_underscore ### Testing of --env _ par_sh_underscore variables in aliases work par_sh_underscore variables in aliases work par_sh_underscore variables in aliases work par_sh_underscore variables in aliases work par_sh_underscore /bin/sh: 3: not_copied_alias: not found par_sh_underscore error=OK par_sh_underscore aliases work par_sh_underscore aliases work par_sh_underscore /bin/sh: 1: myecho: not found par_sh_underscore OK if no myecho ^^^^^^^^^^^^^^^^^ par_sh_underscore /bin/sh: 1: myecho: not found par_sh_underscore OK if no myecho ^^^^^^^^^^^^^^^^^ par_sh_parset parset par_sh_parset ### parset into vars with comma par_sh_parset foo bar baz par_sh_parset ### parset into vars with space par_sh_parset foo bar baz par_sh_parset ### parset with newlines par_sh_parset 1 par_sh_parset 1 par_sh_parset 2 par_sh_parset 1 par_sh_parset 2 par_sh_parset 3 par_sh_parset ### env_parset par_sh_parset # alias par_sh_parset myalias foo par_sh_parset myalias bar par_sh_parset myalias baz par_sh_parset # variable with newline par_sh_parset newline1 par_sh_parset newline2 foo par_sh_parset newline1 par_sh_parset newline2 bar par_sh_parset newline1 par_sh_parset newline2 baz par_sh_parset ### parset into vars with comma par_sh_parset foo bar baz par_sh_parset ### parset into vars with space par_sh_parset foo bar baz par_sh_parset ### parset with newlines par_sh_parset newline1 par_sh_parset newline2 par_sh_parset 1 par_sh_parset newline1 par_sh_parset newline2 par_sh_parset 1 par_sh_parset 2 par_sh_parset newline1 par_sh_parset newline2 par_sh_parset 1 par_sh_parset 2 par_sh_parset 3 par_sh_parset Exit value 2 = 2 par_sh_parset Exit value 2 = 2 par_sh_man ### sh par_sh_man ### From man env_parallel par_sh_man aliases with = & " ! ' work par_sh_man aliases with = & " ! ' work par_sh_man aliases with = & " ! ' work par_sh_man aliases with = & " ! ' work par_sh_man aliases with = & " ! ' work par_sh_man multiline par_sh_man aliases with = & " ! ' work par_sh_man multiline par_sh_man aliases with = & " ! ' work par_sh_man multiline par_sh_man aliases with = & " ! ' work par_sh_man multiline par_sh_man aliases with = & " ! ' work par_sh_man multiline par_sh_man aliases with = & " ! ' work par_sh_man variables with = & " ! ' work par_sh_man variables with = & " ! ' work par_sh_man variables with = & " ! ' work par_sh_man variables with = & " ! ' work par_sh_man variables with = & " ! ' work par_sh_man multiline par_sh_man variables with = & " ! ' work par_sh_man multiline par_sh_man variables with = & " ! ' work par_sh_man multiline par_sh_man variables with = & " ! ' work par_sh_man multiline par_sh_man variables with = & " ! ' work par_sh_man multiline par_sh_man variables with = & " ! ' work par_sh_man exit value 2 should be 2 par_sh_man Unknown option: no-such-option par_sh_man exit value 255 should be 255 par_sh_funky par_sh_funky ' ' par_sh_funky ' par_sh_funky  !"#$%&'"'"'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~' par_sh_funky 3 arg alias_works par_sh_funky 3 arg alias_works_over_ssh par_sh_environment_too_big bug #50815: env_parallel should warn if the environment is too big par_sh_environment_too_big OK_bigvar par_sh_environment_too_big OK_bigvar_remote par_sh_environment_too_big OK_bigvar_quote par_sh_environment_too_big OK_bigvar_quote_remote par_sh_environment_too_big OK_bigfunc par_sh_environment_too_big OK_bigfunc_remote par_sh_environment_too_big OK_bigfunc_quote par_sh_environment_too_big OK_bigfunc_quote_remote par_sh_environment_too_big Rest should fail - functions not supported in sh par_sh_environment_too_big sh: XXX: perl: Argument list too long par_sh_environment_too_big env_parallel: Error: Your environment is too big. par_sh_environment_too_big env_parallel: Error: You can try 3 different approaches: par_sh_environment_too_big env_parallel: Error: 1. Run 'env_parallel --session' before you set par_sh_environment_too_big env_parallel: Error: variables or define functions. par_sh_environment_too_big env_parallel: Error: 2. Use --env and only mention the names to copy. par_sh_environment_too_big env_parallel: Error: 3. Try running this in a clean environment once: par_sh_environment_too_big env_parallel: Error: env_parallel --record-env par_sh_environment_too_big env_parallel: Error: And then use '--env _' par_sh_environment_too_big env_parallel: Error: For details see: man env_parallel par_sh_environment_too_big parallel: Error: Command line too long (XXX >= XXX) at input 0: fail_bigvar_remote par_sh_environment_too_big sh: XXX: perl: Argument list too long par_sh_environment_too_big env_parallel: Error: Your environment is too big. par_sh_environment_too_big env_parallel: Error: You can try 3 different approaches: par_sh_environment_too_big env_parallel: Error: 1. Run 'env_parallel --session' before you set par_sh_environment_too_big env_parallel: Error: variables or define functions. par_sh_environment_too_big env_parallel: Error: 2. Use --env and only mention the names to copy. par_sh_environment_too_big env_parallel: Error: 3. Try running this in a clean environment once: par_sh_environment_too_big env_parallel: Error: env_parallel --record-env par_sh_environment_too_big env_parallel: Error: And then use '--env _' par_sh_environment_too_big env_parallel: Error: For details see: man env_parallel par_sh_environment_too_big parallel: Error: Command line too long (XXX >= XXX) at input 0: fail_bigvar_quote_remote par_sh_environment_too_big fail_bigfunc-not-supported par_sh_environment_too_big fail_bigfunc_remote-not-supported par_sh_environment_too_big fail_bigfunc_quote-not-supported par_sh_environment_too_big fail_bigfunc_quote_remote-not-supported par_sh_env_parallel_session ### Test env_parallel --session par_sh_env_parallel_session ### level0 should be hidden, level1 should be transferred par_sh_env_parallel_session par_sh_env_parallel_session /bin/sh: XXX: level0func: not found par_sh_env_parallel_session /bin/sh: XXX: level0alias: not found par_sh_env_parallel_session /bin/sh: XXX: Bad substitution par_sh_env_parallel_session par_sh_env_parallel_session /bin/sh: XXX: level0func: not found par_sh_env_parallel_session /bin/sh: XXX: level0alias: not found par_sh_env_parallel_session /bin/sh: XXX: Bad substitution par_sh_env_parallel_session l1var par_sh_env_parallel_session /bin/sh: XXX: level1func: not found par_sh_env_parallel_session /bin/sh: XXX: level1alias: not found par_sh_env_parallel_session /bin/sh: XXX: Bad substitution par_sh_env_parallel_session l1var par_sh_env_parallel_session /bin/sh: XXX: level1func: not found par_sh_env_parallel_session /bin/sh: XXX: level1alias: not found par_sh_env_parallel_session /bin/sh: XXX: Bad substitution par_sh_env_parallel_session ### level0+1 should be hidden, level2 should be transferred par_sh_env_parallel_session par_sh_env_parallel_session /bin/sh: 2: level0func: not found par_sh_env_parallel_session /bin/sh: 2: level0alias: not found par_sh_env_parallel_session /bin/sh: 2: Bad substitution par_sh_env_parallel_session par_sh_env_parallel_session /bin/sh: 2: level0func: not found par_sh_env_parallel_session /bin/sh: 2: level0alias: not found par_sh_env_parallel_session /bin/sh: 2: Bad substitution par_sh_env_parallel_session par_sh_env_parallel_session /bin/sh: 2: level1func: not found par_sh_env_parallel_session /bin/sh: 2: level1alias: not found par_sh_env_parallel_session /bin/sh: 2: Bad substitution par_sh_env_parallel_session par_sh_env_parallel_session /bin/sh: 2: level1func: not found par_sh_env_parallel_session /bin/sh: 2: level1alias: not found par_sh_env_parallel_session /bin/sh: 2: Bad substitution par_sh_env_parallel_session l2var par_sh_env_parallel_session /bin/sh: 2: level2func: not found par_sh_env_parallel_session /bin/sh: 2: level2alias: not found par_sh_env_parallel_session /bin/sh: 2: Bad substitution par_sh_env_parallel_session l2var par_sh_env_parallel_session /bin/sh: 2: level2func: not found par_sh_env_parallel_session /bin/sh: 2: level2alias: not found par_sh_env_parallel_session /bin/sh: 2: Bad substitution par_sh_env_parallel_session ### level0 should be hidden, level1+2 should be transferred par_sh_env_parallel_session par_sh_env_parallel_session /bin/sh: XXX: level0func: not found par_sh_env_parallel_session /bin/sh: XXX: level0alias: not found par_sh_env_parallel_session /bin/sh: XXX: Bad substitution par_sh_env_parallel_session par_sh_env_parallel_session /bin/sh: XXX: level0func: not found par_sh_env_parallel_session /bin/sh: XXX: level0alias: not found par_sh_env_parallel_session /bin/sh: XXX: Bad substitution par_sh_env_parallel_session l1var par_sh_env_parallel_session /bin/sh: XXX: level1func: not found par_sh_env_parallel_session /bin/sh: XXX: level1alias: not found par_sh_env_parallel_session /bin/sh: XXX: Bad substitution par_sh_env_parallel_session l1var par_sh_env_parallel_session /bin/sh: XXX: level1func: not found par_sh_env_parallel_session /bin/sh: XXX: level1alias: not found par_sh_env_parallel_session /bin/sh: XXX: Bad substitution par_sh_env_parallel_session l2var par_sh_env_parallel_session /bin/sh: XXX: level2func: not found par_sh_env_parallel_session /bin/sh: XXX: level2alias: not found par_sh_env_parallel_session /bin/sh: XXX: Bad substitution par_sh_env_parallel_session l2var par_sh_env_parallel_session /bin/sh: XXX: level2func: not found par_sh_env_parallel_session /bin/sh: XXX: level2alias: not found par_sh_env_parallel_session /bin/sh: XXX: Bad substitution par_sh_env_parallel_session ### level0+1+2 should be transferred par_sh_env_parallel_session l0var par_sh_env_parallel_session /bin/sh: XXX: level0func: not found par_sh_env_parallel_session /bin/sh: XXX: level0alias: not found par_sh_env_parallel_session /bin/sh: XXX: Bad substitution par_sh_env_parallel_session l0var par_sh_env_parallel_session /bin/sh: XXX: level0func: not found par_sh_env_parallel_session /bin/sh: XXX: level0alias: not found par_sh_env_parallel_session /bin/sh: XXX: Bad substitution par_sh_env_parallel_session l1var par_sh_env_parallel_session /bin/sh: XXX: level1func: not found par_sh_env_parallel_session /bin/sh: XXX: level1alias: not found par_sh_env_parallel_session /bin/sh: XXX: Bad substitution par_sh_env_parallel_session l1var par_sh_env_parallel_session /bin/sh: XXX: level1func: not found par_sh_env_parallel_session /bin/sh: XXX: level1alias: not found par_sh_env_parallel_session /bin/sh: XXX: Bad substitution par_sh_env_parallel_session l2var par_sh_env_parallel_session /bin/sh: XXX: level2func: not found par_sh_env_parallel_session /bin/sh: XXX: level2alias: not found par_sh_env_parallel_session /bin/sh: XXX: Bad substitution par_sh_env_parallel_session l2var par_sh_env_parallel_session /bin/sh: XXX: level2func: not found par_sh_env_parallel_session /bin/sh: XXX: level2alias: not found par_sh_env_parallel_session /bin/sh: XXX: Bad substitution par_sh_env_parallel_session /bin/sh: 1: aliasbefore: not found par_sh_env_parallel_session /bin/sh: 1: aliasbefore: not found par_sh_env_parallel_session /bin/sh: 1: funcbefore: not found par_sh_env_parallel_session /bin/sh: 1: funcbefore: not found par_sh_env_parallel_session no_before par_sh_env_parallel_session no_before par_sh_env_parallel_session after aliasafter_OK par_sh_env_parallel_session after aliasafter_OK par_sh_env_parallel_session /bin/sh: 3: funcafter: not found par_sh_env_parallel_session /bin/sh: 3: funcafter: not found par_sh_env_parallel_session after varafter_OK par_sh_env_parallel_session after varafter_OK par_sh_env_parallel OK par_sh_env_parallel OK par_sh_env_parallel alias line 1 par_sh_env_parallel alias line 1 par_sh_env_parallel alias line 2 par_sh_env_parallel alias line 2 par_sh_env_parallel alias line 3 par_sh_env_parallel alias line 3 par_sh_env_parallel alias2 line 1 par_sh_env_parallel alias2 line 1 par_sh_env_parallel alias2 line 2 par_sh_env_parallel alias2 line 2 par_sh_env_parallel bug #50435: Remote fifo broke in 20150522 par_sh_env_parallel bug #52534: Tail of multiline alias is ignored par_sh_env_parallel data from stdin par_sh_env_parallel data from stdin par_mksh_underscore ### mksh par_mksh_underscore ### Testing of --env _ par_mksh_underscore variables in aliases in and arrays in functions work par_mksh_underscore variables in aliases in and arrays in functions work par_mksh_underscore variables in aliases in and arrays in functions work par_mksh_underscore variables in aliases in and arrays in functions work par_mksh_underscore variables in aliases in and arrays in functions work par_mksh_underscore variables in aliases in and arrays in functions work par_mksh_underscore /bin/mksh: not_copied_alias: inaccessible or not found par_mksh_underscore /bin/mksh: not_copied_func: inaccessible or not found par_mksh_underscore error=OK par_mksh_underscore error=OK par_mksh_underscore aliases in and arrays in functions work par_mksh_underscore aliases in and arrays in functions work par_mksh_underscore aliases in functions work par_mksh_underscore aliases in functions work par_mksh_underscore aliases in functions work par_mksh_underscore OK if no myecho ^^^^^^^^^^^^^^^^^ par_mksh_underscore aliases in functions work par_mksh_underscore OK if no myecho ^^^^^^^^^^^^^^^^^ par_mksh_underscore /bin/mksh: myfunc: inaccessible or not found par_mksh_underscore OK if no myfunc ^^^^^^^^^^^^^^^^^ par_mksh_underscore /bin/mksh: myfunc: inaccessible or not found par_mksh_underscore OK if no myfunc ^^^^^^^^^^^^^^^^^ par_mksh_parset parset par_mksh_parset ### parset into array par_mksh_parset foo bar baz par_mksh_parset ### parset into vars with comma par_mksh_parset foo bar baz par_mksh_parset ### parset into vars with space par_mksh_parset foo bar baz par_mksh_parset ### parset with newlines par_mksh_parset 1 par_mksh_parset 1 par_mksh_parset 2 par_mksh_parset 1 par_mksh_parset 2 par_mksh_parset 3 par_mksh_parset ### parset into indexed array vars par_mksh_parset foo bar baz par_mksh_parset foo bar baz par_mksh_parset ### env_parset par_mksh_parset myecho myvar myarr 1 myfun foo myecho myvar myarr 1 myfun bar myecho myvar myarr 1 myfun baz par_mksh_parset myecho myvar myarr 1 myfun foo myecho myvar myarr 1 myfun bar myecho myvar myarr 1 myfun baz par_mksh_parset myecho myvar myarr 1 myfun foo myecho myvar myarr 1 myfun bar myecho myvar myarr 1 myfun baz par_mksh_parset newline1 par_mksh_parset newline2 par_mksh_parset 1 par_mksh_parset newline1 par_mksh_parset newline2 par_mksh_parset 1 par_mksh_parset 2 par_mksh_parset newline1 par_mksh_parset newline2 par_mksh_parset 1 par_mksh_parset 2 par_mksh_parset 3 par_mksh_parset myecho myvar myarr 1 myfun foo myecho myvar myarr 1 myfun bar myecho myvar myarr 1 myfun baz par_mksh_parset myecho myvar myarr 1 myfun foo myecho myvar myarr 1 myfun bar myecho myvar myarr 1 myfun baz par_mksh_parset Exit value 2 = 2 par_mksh_parset Exit value 2 = 2 par_mksh_man ### mksh par_mksh_man ### From man env_parallel par_mksh_man aliases with = & " ! ' work par_mksh_man aliases with = & " ! ' work par_mksh_man aliases with = & " ! ' work par_mksh_man aliases with = & " ! ' work par_mksh_man aliases with = & " ! ' work par_mksh_man multiline par_mksh_man aliases with = & " ! ' work par_mksh_man env_parallel: Warning: Alias "multiline" contains newline. par_mksh_man env_parallel: Warning: Make sure the command has at least one newline after "multiline". par_mksh_man env_parallel: Warning: See BUGS in "man env_parallel". par_mksh_man multiline par_mksh_man aliases with = & " ! ' work par_mksh_man env_parallel: Warning: Alias "multiline" contains newline. par_mksh_man env_parallel: Warning: Make sure the command has at least one newline after "multiline". par_mksh_man env_parallel: Warning: See BUGS in "man env_parallel". par_mksh_man multiline par_mksh_man aliases with = & " ! ' work par_mksh_man env_parallel: Warning: Alias "multiline" contains newline. par_mksh_man env_parallel: Warning: Make sure the command has at least one newline after "multiline". par_mksh_man env_parallel: Warning: See BUGS in "man env_parallel". par_mksh_man multiline par_mksh_man aliases with = & " ! ' work par_mksh_man env_parallel: Warning: Alias "multiline" contains newline. par_mksh_man env_parallel: Warning: Make sure the command has at least one newline after "multiline". par_mksh_man env_parallel: Warning: See BUGS in "man env_parallel". par_mksh_man multiline par_mksh_man aliases with = & " ! ' work par_mksh_man functions with = & " ! ' work par_mksh_man functions with = & " ! ' work par_mksh_man functions with = & " ! ' work par_mksh_man functions with = & " ! ' work par_mksh_man functions with = & " ! ' work par_mksh_man variables with = & " ! ' work par_mksh_man variables with = & " ! ' work par_mksh_man variables with = & " ! ' work par_mksh_man variables with = & " ! ' work par_mksh_man variables with = & " ! ' work par_mksh_man multiline par_mksh_man variables with = & " ! ' work par_mksh_man multiline par_mksh_man variables with = & " ! ' work par_mksh_man multiline par_mksh_man variables with = & " ! ' work par_mksh_man multiline par_mksh_man variables with = & " ! ' work par_mksh_man multiline par_mksh_man variables with = & " ! ' work par_mksh_man arrays with = & " ! ' work, too par_mksh_man arrays par_mksh_man with = & " ! ' par_mksh_man work, par_mksh_man too par_mksh_man arrays par_mksh_man with = & " ! ' par_mksh_man work, par_mksh_man too par_mksh_man arrays par_mksh_man with = & " ! ' par_mksh_man work, par_mksh_man too par_mksh_man arrays par_mksh_man with = & " ! ' par_mksh_man work, par_mksh_man too par_mksh_man multi par_mksh_man level par_mksh_man env_parallel par_mksh_man exit value 2 should be 2 par_mksh_man Unknown option: no-such-option par_mksh_man exit value 255 should be 255 par_mksh_funky par_mksh_funky par_mksh_funky  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~-funky par_mksh_funky par_mksh_funky  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~-funky par_mksh_funky space 6 par_mksh_funky space 6 par_mksh_funky ' ' par_mksh_funky ' par_mksh_funky  !"#$%&'"'"'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~' par_mksh_funky 3 arg alias_works par_mksh_funky 3 arg alias_works_over_ssh par_mksh_funky Funky- par_mksh_funky Funky- par_mksh_funky function_works par_mksh_funky function_works_over_ssh par_mksh_funky myvar works par_mksh_funky myvar works par_mksh_environment_too_big bug #50815: env_parallel should warn if the environment is too big par_mksh_environment_too_big OK_bigvar par_mksh_environment_too_big OK_bigvar_remote par_mksh_environment_too_big OK_bigvar_quote par_mksh_environment_too_big OK_bigvar_quote_remote par_mksh_environment_too_big OK_bigfunc par_mksh_environment_too_big OK_bigfunc_remote par_mksh_environment_too_big OK_bigfunc_quote par_mksh_environment_too_big OK_bigfunc_quote_remote par_mksh_environment_too_big Rest should fail par_mksh_environment_too_big mksh: /bin/perl: Argument list too long par_mksh_environment_too_big env_parallel: Error: Your environment is too big. par_mksh_environment_too_big env_parallel: Error: You can try 3 different approaches: par_mksh_environment_too_big env_parallel: Error: 1. Run 'env_parallel --session' before you set par_mksh_environment_too_big env_parallel: Error: variables or define functions. par_mksh_environment_too_big env_parallel: Error: 2. Use --env and only mention the names to copy. par_mksh_environment_too_big env_parallel: Error: 3. Try running this in a clean environment once: par_mksh_environment_too_big env_parallel: Error: env_parallel --record-env par_mksh_environment_too_big env_parallel: Error: And then use '--env _' par_mksh_environment_too_big env_parallel: Error: For details see: man env_parallel par_mksh_environment_too_big parallel: Error: Command line too long (XXX >= XXX) at input 0: fail_bigvar_remote par_mksh_environment_too_big mksh: /bin/perl: Argument list too long par_mksh_environment_too_big env_parallel: Error: Your environment is too big. par_mksh_environment_too_big env_parallel: Error: You can try 3 different approaches: par_mksh_environment_too_big env_parallel: Error: 1. Run 'env_parallel --session' before you set par_mksh_environment_too_big env_parallel: Error: variables or define functions. par_mksh_environment_too_big env_parallel: Error: 2. Use --env and only mention the names to copy. par_mksh_environment_too_big env_parallel: Error: 3. Try running this in a clean environment once: par_mksh_environment_too_big env_parallel: Error: env_parallel --record-env par_mksh_environment_too_big env_parallel: Error: And then use '--env _' par_mksh_environment_too_big env_parallel: Error: For details see: man env_parallel par_mksh_environment_too_big parallel: Error: Command line too long (XXX >= XXX) at input 0: fail_bigvar_quote_remote par_mksh_environment_too_big mksh: /bin/perl: Argument list too long par_mksh_environment_too_big env_parallel: Error: Your environment is too big. par_mksh_environment_too_big env_parallel: Error: You can try 3 different approaches: par_mksh_environment_too_big env_parallel: Error: 1. Run 'env_parallel --session' before you set par_mksh_environment_too_big env_parallel: Error: variables or define functions. par_mksh_environment_too_big env_parallel: Error: 2. Use --env and only mention the names to copy. par_mksh_environment_too_big env_parallel: Error: 3. Try running this in a clean environment once: par_mksh_environment_too_big env_parallel: Error: env_parallel --record-env par_mksh_environment_too_big env_parallel: Error: And then use '--env _' par_mksh_environment_too_big env_parallel: Error: For details see: man env_parallel par_mksh_environment_too_big parallel: Error: Command line too long (XXX >= XXX) at input 0: fail_bigfunc_remote par_mksh_environment_too_big mksh: /bin/perl: Argument list too long par_mksh_environment_too_big env_parallel: Error: Your environment is too big. par_mksh_environment_too_big env_parallel: Error: You can try 3 different approaches: par_mksh_environment_too_big env_parallel: Error: 1. Run 'env_parallel --session' before you set par_mksh_environment_too_big env_parallel: Error: variables or define functions. par_mksh_environment_too_big env_parallel: Error: 2. Use --env and only mention the names to copy. par_mksh_environment_too_big env_parallel: Error: 3. Try running this in a clean environment once: par_mksh_environment_too_big env_parallel: Error: env_parallel --record-env par_mksh_environment_too_big env_parallel: Error: And then use '--env _' par_mksh_environment_too_big env_parallel: Error: For details see: man env_parallel par_mksh_environment_too_big parallel: Error: Command line too long (XXX >= XXX) at input 0: fail_bigfunc_quote_remote par_mksh_env_parallel_session ### Test env_parallel --session par_mksh_env_parallel_session ### level0 should be hidden, level1 should be transferred par_mksh_env_parallel_session par_mksh_env_parallel_session fail par_mksh_env_parallel_session /bin/mksh: level0func: inaccessible or not found par_mksh_env_parallel_session /bin/mksh: level0alias: inaccessible or not found par_mksh_env_parallel_session par_mksh_env_parallel_session fail par_mksh_env_parallel_session /bin/mksh: level0func: inaccessible or not found par_mksh_env_parallel_session /bin/mksh: level0alias: inaccessible or not found par_mksh_env_parallel_session l1var par_mksh_env_parallel_session l1func par_mksh_env_parallel_session l1alias par_mksh_env_parallel_session level1 array OK par_mksh_env_parallel_session l1var par_mksh_env_parallel_session l1func par_mksh_env_parallel_session l1alias par_mksh_env_parallel_session level1 array OK par_mksh_env_parallel_session ### level0+1 should be hidden, level2 should be transferred par_mksh_env_parallel_session par_mksh_env_parallel_session fail par_mksh_env_parallel_session /bin/mksh: level0func: inaccessible or not found par_mksh_env_parallel_session /bin/mksh: level0alias: inaccessible or not found par_mksh_env_parallel_session par_mksh_env_parallel_session fail par_mksh_env_parallel_session /bin/mksh: level0func: inaccessible or not found par_mksh_env_parallel_session /bin/mksh: level0alias: inaccessible or not found par_mksh_env_parallel_session par_mksh_env_parallel_session fail par_mksh_env_parallel_session /bin/mksh: level1func: inaccessible or not found par_mksh_env_parallel_session /bin/mksh: level1alias: inaccessible or not found par_mksh_env_parallel_session par_mksh_env_parallel_session fail par_mksh_env_parallel_session /bin/mksh: level1func: inaccessible or not found par_mksh_env_parallel_session /bin/mksh: level1alias: inaccessible or not found par_mksh_env_parallel_session l2var par_mksh_env_parallel_session l2func par_mksh_env_parallel_session l2alias par_mksh_env_parallel_session level2 array OK par_mksh_env_parallel_session l2var par_mksh_env_parallel_session l2func par_mksh_env_parallel_session l2alias par_mksh_env_parallel_session level2 array OK par_mksh_env_parallel_session ### level0 should be hidden, level1+2 should be transferred par_mksh_env_parallel_session par_mksh_env_parallel_session fail par_mksh_env_parallel_session /bin/mksh: level0func: inaccessible or not found par_mksh_env_parallel_session /bin/mksh: level0alias: inaccessible or not found par_mksh_env_parallel_session par_mksh_env_parallel_session fail par_mksh_env_parallel_session /bin/mksh: level0func: inaccessible or not found par_mksh_env_parallel_session /bin/mksh: level0alias: inaccessible or not found par_mksh_env_parallel_session l1var par_mksh_env_parallel_session l1func par_mksh_env_parallel_session l1alias par_mksh_env_parallel_session level1 array OK par_mksh_env_parallel_session l1var par_mksh_env_parallel_session l1func par_mksh_env_parallel_session l1alias par_mksh_env_parallel_session level1 array OK par_mksh_env_parallel_session l2var par_mksh_env_parallel_session l2func par_mksh_env_parallel_session l2alias par_mksh_env_parallel_session level2 array OK par_mksh_env_parallel_session l2var par_mksh_env_parallel_session l2func par_mksh_env_parallel_session l2alias par_mksh_env_parallel_session level2 array OK par_mksh_env_parallel_session ### level0+1+2 should be transferred par_mksh_env_parallel_session l0var par_mksh_env_parallel_session l0func par_mksh_env_parallel_session l0alias par_mksh_env_parallel_session level0 array OK par_mksh_env_parallel_session l0var par_mksh_env_parallel_session l0func par_mksh_env_parallel_session l0alias par_mksh_env_parallel_session level0 array OK par_mksh_env_parallel_session l1var par_mksh_env_parallel_session l1func par_mksh_env_parallel_session l1alias par_mksh_env_parallel_session level1 array OK par_mksh_env_parallel_session l1var par_mksh_env_parallel_session l1func par_mksh_env_parallel_session l1alias par_mksh_env_parallel_session level1 array OK par_mksh_env_parallel_session l2var par_mksh_env_parallel_session l2func par_mksh_env_parallel_session l2alias par_mksh_env_parallel_session level2 array OK par_mksh_env_parallel_session l2var par_mksh_env_parallel_session l2func par_mksh_env_parallel_session l2alias par_mksh_env_parallel_session level2 array OK par_mksh_env_parallel_session /bin/mksh: aliasbefore: inaccessible or not found par_mksh_env_parallel_session /bin/mksh: aliasbefore: inaccessible or not found par_mksh_env_parallel_session /bin/mksh: funcbefore: inaccessible or not found par_mksh_env_parallel_session /bin/mksh: funcbefore: inaccessible or not found par_mksh_env_parallel_session no_before par_mksh_env_parallel_session no_before par_mksh_env_parallel_session no_before par_mksh_env_parallel_session no_before par_mksh_env_parallel_session after aliasafter_OK par_mksh_env_parallel_session after aliasafter_OK par_mksh_env_parallel_session after funcafter_OK par_mksh_env_parallel_session after funcafter_OK par_mksh_env_parallel_session after varafter_OK par_mksh_env_parallel_session after varafter_OK par_mksh_env_parallel_session array after arrayafter_OK par_mksh_env_parallel_session array after arrayafter_OK par_mksh_env_parallel OK par_mksh_env_parallel OK par_mksh_env_parallel alias line 1 par_mksh_env_parallel alias line 1 par_mksh_env_parallel alias line 2 par_mksh_env_parallel alias line 2 par_mksh_env_parallel alias line 3 par_mksh_env_parallel alias line 3 par_mksh_env_parallel alias2 line 1 par_mksh_env_parallel alias2 line 1 par_mksh_env_parallel alias2 line 2 par_mksh_env_parallel alias2 line 2 par_mksh_env_parallel bug #50435: Remote fifo broke in 20150522 par_mksh_env_parallel bug #52534: Tail of multiline alias is ignored par_mksh_env_parallel data from stdin par_mksh_env_parallel data from stdin par_mksh_env_parallel env_parallel: Warning: Alias "myalias" contains newline. par_mksh_env_parallel env_parallel: Warning: Alias "myalias" contains newline. par_mksh_env_parallel env_parallel: Warning: Alias "myalias2" contains newline. par_mksh_env_parallel env_parallel: Warning: Alias "myalias2" contains newline. par_mksh_env_parallel env_parallel: Warning: Make sure the command has at least one newline after "myalias". par_mksh_env_parallel env_parallel: Warning: Make sure the command has at least one newline after "myalias". par_mksh_env_parallel env_parallel: Warning: Make sure the command has at least one newline after "myalias2". par_mksh_env_parallel env_parallel: Warning: Make sure the command has at least one newline after "myalias2". par_mksh_env_parallel env_parallel: Warning: See BUGS in "man env_parallel". par_mksh_env_parallel env_parallel: Warning: See BUGS in "man env_parallel". par_mksh_env_parallel env_parallel: Warning: See BUGS in "man env_parallel". par_mksh_env_parallel env_parallel: Warning: See BUGS in "man env_parallel". par_ksh_underscore ### ksh par_ksh_underscore ### Testing of --env _ par_ksh_underscore variables in aliases in and arrays in functions work par_ksh_underscore variables in aliases in and arrays in functions work par_ksh_underscore variables in aliases in and arrays in functions work par_ksh_underscore variables in aliases in and arrays in functions work par_ksh_underscore variables in aliases in and arrays in functions work par_ksh_underscore variables in aliases in and arrays in functions work par_ksh_underscore /bin/ksh: line 4: not_copied_alias: not found par_ksh_underscore /bin/ksh: line 4: not_copied_func: not found par_ksh_underscore error=OK par_ksh_underscore error=OK par_ksh_underscore aliases in and arrays in functions work par_ksh_underscore aliases in and arrays in functions work par_ksh_underscore aliases in functions work par_ksh_underscore aliases in functions work par_ksh_underscore /bin/ksh: myecho: not found [No such file or directory] par_ksh_underscore OK if no myecho ^^^^^^^^^^^^^^^^^ par_ksh_underscore /bin/ksh: myecho: not found [No such file or directory] par_ksh_underscore OK if no myecho ^^^^^^^^^^^^^^^^^ par_ksh_underscore /bin/ksh: myfunc: not found par_ksh_underscore OK if no myfunc ^^^^^^^^^^^^^^^^^ par_ksh_underscore /bin/ksh: myfunc: not found par_ksh_underscore OK if no myfunc ^^^^^^^^^^^^^^^^^ par_ksh_parset parset par_ksh_parset ### parset into array par_ksh_parset foo bar baz par_ksh_parset ### parset into vars with comma par_ksh_parset foo bar baz par_ksh_parset ### parset into vars with space par_ksh_parset foo bar baz par_ksh_parset ### parset with newlines par_ksh_parset 1 par_ksh_parset 1 par_ksh_parset 2 par_ksh_parset 1 par_ksh_parset 2 par_ksh_parset 3 par_ksh_parset ### parset into indexed array vars par_ksh_parset foo bar baz par_ksh_parset foo bar baz par_ksh_parset ### env_parset par_ksh_parset myecho myvar myarr 1 myfun foo myecho myvar myarr 1 myfun bar myecho myvar myarr 1 myfun baz par_ksh_parset myecho myvar myarr 1 myfun foo myecho myvar myarr 1 myfun bar myecho myvar myarr 1 myfun baz par_ksh_parset myecho myvar myarr 1 myfun foo myecho myvar myarr 1 myfun bar myecho myvar myarr 1 myfun baz par_ksh_parset newline1 par_ksh_parset newline2 par_ksh_parset 1 par_ksh_parset newline1 par_ksh_parset newline2 par_ksh_parset 1 par_ksh_parset 2 par_ksh_parset newline1 par_ksh_parset newline2 par_ksh_parset 1 par_ksh_parset 2 par_ksh_parset 3 par_ksh_parset myecho myvar myarr 1 myfun foo myecho myvar myarr 1 myfun bar myecho myvar myarr 1 myfun baz par_ksh_parset myecho myvar myarr 1 myfun foo myecho myvar myarr 1 myfun bar myecho myvar myarr 1 myfun baz par_ksh_parset Exit value 2 = 2 par_ksh_parset Exit value 2 = 2 par_ksh_man ### ksh par_ksh_man ### From man env_parallel par_ksh_man aliases with = & " ! ' work par_ksh_man aliases with = & " ! ' work par_ksh_man aliases with = & " ! ' work par_ksh_man aliases with = & " ! ' work par_ksh_man aliases with = & " ! ' work par_ksh_man multiline par_ksh_man aliases with = & " ! ' work par_ksh_man env_parallel: Warning: Alias "multiline" contains newline. par_ksh_man env_parallel: Warning: Make sure the command has at least one newline after "multiline". par_ksh_man env_parallel: Warning: See BUGS in "man env_parallel". par_ksh_man multiline par_ksh_man aliases with = & " ! ' work par_ksh_man env_parallel: Warning: Alias "multiline" contains newline. par_ksh_man env_parallel: Warning: Make sure the command has at least one newline after "multiline". par_ksh_man env_parallel: Warning: See BUGS in "man env_parallel". par_ksh_man multiline par_ksh_man aliases with = & " ! ' work par_ksh_man env_parallel: Warning: Alias "multiline" contains newline. par_ksh_man env_parallel: Warning: Make sure the command has at least one newline after "multiline". par_ksh_man env_parallel: Warning: See BUGS in "man env_parallel". par_ksh_man multiline par_ksh_man aliases with = & " ! ' work par_ksh_man env_parallel: Warning: Alias "multiline" contains newline. par_ksh_man env_parallel: Warning: Make sure the command has at least one newline after "multiline". par_ksh_man env_parallel: Warning: See BUGS in "man env_parallel". par_ksh_man multiline par_ksh_man aliases with = & " ! ' work par_ksh_man functions with = & " ! ' work par_ksh_man functions with = & " ! ' work par_ksh_man functions with = & " ! ' work par_ksh_man functions with = & " ! ' work par_ksh_man functions with = & " ! ' work par_ksh_man variables with = & " ! ' work par_ksh_man variables with = & " ! ' work par_ksh_man variables with = & " ! ' work par_ksh_man variables with = & " ! ' work par_ksh_man variables with = & " ! ' work par_ksh_man multiline par_ksh_man variables with = & " ! ' work par_ksh_man multiline par_ksh_man variables with = & " ! ' work par_ksh_man multiline par_ksh_man variables with = & " ! ' work par_ksh_man multiline par_ksh_man variables with = & " ! ' work par_ksh_man multiline par_ksh_man variables with = & " ! ' work par_ksh_man arrays with = & " ! ' work, too par_ksh_man arrays par_ksh_man with = & " ! ' par_ksh_man work, par_ksh_man too par_ksh_man arrays par_ksh_man with = & " ! ' par_ksh_man work, par_ksh_man too par_ksh_man arrays par_ksh_man with = & " ! ' par_ksh_man work, par_ksh_man too par_ksh_man arrays par_ksh_man with = & " ! ' par_ksh_man work, par_ksh_man too par_ksh_man This may never work par_ksh_man https://unix.stackexchange.com/questions/457031/extract-full-function-definitions par_ksh_man /bin/ksh: line XXX: syntax error at line XXX: `(' unexpected par_ksh_man /bin/ksh: line XXX: syntax error at line XXX: `(' unexpected par_ksh_man /bin/ksh: line XXX: syntax error at line XXX: `(' unexpected par_ksh_man exit value 2 should be 2 par_ksh_man Unknown option: no-such-option par_ksh_man exit value 255 should be 255 par_ksh_funky par_ksh_funky par_ksh_funky  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~-funky par_ksh_funky par_ksh_funky  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~-funky par_ksh_funky space 6 par_ksh_funky space 6 par_ksh_funky ' ' par_ksh_funky ' par_ksh_funky  !"#$%&'"'"'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~' par_ksh_funky 3 arg alias_works par_ksh_funky 3 arg alias_works_over_ssh par_ksh_funky Funky- par_ksh_funky Funky- par_ksh_funky assoc_val_a par_ksh_funky assoc_val_a par_ksh_funky function_works par_ksh_funky function_works_over_ssh par_ksh_funky myvar works par_ksh_funky myvar works par_ksh_environment_too_big bug #50815: env_parallel should warn if the environment is too big par_ksh_environment_too_big OK_bigvar par_ksh_environment_too_big OK_bigvar_remote par_ksh_environment_too_big OK_bigvar_quote par_ksh_environment_too_big OK_bigvar_quote_remote par_ksh_environment_too_big OK_bigfunc par_ksh_environment_too_big OK_bigfunc_remote par_ksh_environment_too_big OK_bigfunc_quote par_ksh_environment_too_big OK_bigfunc_quote_remote par_ksh_environment_too_big Rest should fail par_ksh_environment_too_big ksh[XXX]: perl: /bin/perl: cannot execute [Argument list too long] par_ksh_environment_too_big env_parallel: Error: Your environment is too big. par_ksh_environment_too_big env_parallel: Error: You can try 3 different approaches: par_ksh_environment_too_big env_parallel: Error: 1. Run 'env_parallel --session' before you set par_ksh_environment_too_big env_parallel: Error: variables or define functions. par_ksh_environment_too_big env_parallel: Error: 2. Use --env and only mention the names to copy. par_ksh_environment_too_big env_parallel: Error: 3. Try running this in a clean environment once: par_ksh_environment_too_big env_parallel: Error: env_parallel --record-env par_ksh_environment_too_big env_parallel: Error: And then use '--env _' par_ksh_environment_too_big env_parallel: Error: For details see: man env_parallel par_ksh_environment_too_big parallel: Error: Command line too long (XXX >= XXX) at input 0: fail_bigvar_remote par_ksh_environment_too_big ksh[XXX]: perl: /bin/perl: cannot execute [Argument list too long] par_ksh_environment_too_big env_parallel: Error: Your environment is too big. par_ksh_environment_too_big env_parallel: Error: You can try 3 different approaches: par_ksh_environment_too_big env_parallel: Error: 1. Run 'env_parallel --session' before you set par_ksh_environment_too_big env_parallel: Error: variables or define functions. par_ksh_environment_too_big env_parallel: Error: 2. Use --env and only mention the names to copy. par_ksh_environment_too_big env_parallel: Error: 3. Try running this in a clean environment once: par_ksh_environment_too_big env_parallel: Error: env_parallel --record-env par_ksh_environment_too_big env_parallel: Error: And then use '--env _' par_ksh_environment_too_big env_parallel: Error: For details see: man env_parallel par_ksh_environment_too_big parallel: Error: Command line too long (XXX >= XXX) at input 0: fail_bigvar_quote_remote par_ksh_environment_too_big ksh[XXX]: perl: /bin/perl: cannot execute [Argument list too long] par_ksh_environment_too_big env_parallel: Error: Your environment is too big. par_ksh_environment_too_big env_parallel: Error: You can try 3 different approaches: par_ksh_environment_too_big env_parallel: Error: 1. Run 'env_parallel --session' before you set par_ksh_environment_too_big env_parallel: Error: variables or define functions. par_ksh_environment_too_big env_parallel: Error: 2. Use --env and only mention the names to copy. par_ksh_environment_too_big env_parallel: Error: 3. Try running this in a clean environment once: par_ksh_environment_too_big env_parallel: Error: env_parallel --record-env par_ksh_environment_too_big env_parallel: Error: And then use '--env _' par_ksh_environment_too_big env_parallel: Error: For details see: man env_parallel par_ksh_environment_too_big parallel: Error: Command line too long (XXX >= XXX) at input 0: fail_bigfunc_remote par_ksh_environment_too_big ksh[XXX]: perl: /bin/perl: cannot execute [Argument list too long] par_ksh_environment_too_big env_parallel: Error: Your environment is too big. par_ksh_environment_too_big env_parallel: Error: You can try 3 different approaches: par_ksh_environment_too_big env_parallel: Error: 1. Run 'env_parallel --session' before you set par_ksh_environment_too_big env_parallel: Error: variables or define functions. par_ksh_environment_too_big env_parallel: Error: 2. Use --env and only mention the names to copy. par_ksh_environment_too_big env_parallel: Error: 3. Try running this in a clean environment once: par_ksh_environment_too_big env_parallel: Error: env_parallel --record-env par_ksh_environment_too_big env_parallel: Error: And then use '--env _' par_ksh_environment_too_big env_parallel: Error: For details see: man env_parallel par_ksh_environment_too_big ksh[XXX]: perl: /bin/perl: cannot execute [Argument list too long] par_ksh_environment_too_big env_parallel: Error: Your environment is too big. par_ksh_environment_too_big env_parallel: Error: You can try 3 different approaches: par_ksh_environment_too_big env_parallel: Error: 1. Run 'env_parallel --session' before you set par_ksh_environment_too_big env_parallel: Error: variables or define functions. par_ksh_environment_too_big env_parallel: Error: 2. Use --env and only mention the names to copy. par_ksh_environment_too_big env_parallel: Error: 3. Try running this in a clean environment once: par_ksh_environment_too_big env_parallel: Error: env_parallel --record-env par_ksh_environment_too_big env_parallel: Error: And then use '--env _' par_ksh_environment_too_big env_parallel: Error: For details see: man env_parallel par_ksh_env_parallel_session ### Test env_parallel --session par_ksh_env_parallel_session ### level0 should be hidden, level1 should be transferred par_ksh_env_parallel_session par_ksh_env_parallel_session fail par_ksh_env_parallel_session /bin/ksh[XXX]: level0func: not found [No such file or directory] par_ksh_env_parallel_session /bin/ksh[XXX]: level0alias: not found [No such file or directory] par_ksh_env_parallel_session par_ksh_env_parallel_session fail par_ksh_env_parallel_session /bin/ksh[XXX]: level0func: not found [No such file or directory] par_ksh_env_parallel_session /bin/ksh[XXX]: level0alias: not found [No such file or directory] par_ksh_env_parallel_session l1var par_ksh_env_parallel_session l1func par_ksh_env_parallel_session l1alias par_ksh_env_parallel_session level1 array OK par_ksh_env_parallel_session l1var par_ksh_env_parallel_session l1func par_ksh_env_parallel_session l1alias par_ksh_env_parallel_session level1 array OK par_ksh_env_parallel_session ### level0+1 should be hidden, level2 should be transferred par_ksh_env_parallel_session par_ksh_env_parallel_session fail par_ksh_env_parallel_session /bin/ksh[XXX]: level0func: not found [No such file or directory] par_ksh_env_parallel_session /bin/ksh[XXX]: level0alias: not found [No such file or directory] par_ksh_env_parallel_session par_ksh_env_parallel_session fail par_ksh_env_parallel_session /bin/ksh[XXX]: level0func: not found [No such file or directory] par_ksh_env_parallel_session /bin/ksh[XXX]: level0alias: not found [No such file or directory] par_ksh_env_parallel_session par_ksh_env_parallel_session fail par_ksh_env_parallel_session /bin/ksh[XXX]: level1func: not found [No such file or directory] par_ksh_env_parallel_session /bin/ksh[XXX]: level1alias: not found [No such file or directory] par_ksh_env_parallel_session par_ksh_env_parallel_session fail par_ksh_env_parallel_session /bin/ksh[XXX]: level1func: not found [No such file or directory] par_ksh_env_parallel_session /bin/ksh[XXX]: level1alias: not found [No such file or directory] par_ksh_env_parallel_session l2var par_ksh_env_parallel_session l2func par_ksh_env_parallel_session l2alias par_ksh_env_parallel_session level2 array OK par_ksh_env_parallel_session l2var par_ksh_env_parallel_session l2func par_ksh_env_parallel_session l2alias par_ksh_env_parallel_session level2 array OK par_ksh_env_parallel_session ### level0 should be hidden, level1+2 should be transferred par_ksh_env_parallel_session par_ksh_env_parallel_session fail par_ksh_env_parallel_session /bin/ksh[XXX]: level0func: not found [No such file or directory] par_ksh_env_parallel_session /bin/ksh[XXX]: level0alias: not found [No such file or directory] par_ksh_env_parallel_session par_ksh_env_parallel_session fail par_ksh_env_parallel_session /bin/ksh[XXX]: level0func: not found [No such file or directory] par_ksh_env_parallel_session /bin/ksh[XXX]: level0alias: not found [No such file or directory] par_ksh_env_parallel_session l1var par_ksh_env_parallel_session l1func par_ksh_env_parallel_session l1alias par_ksh_env_parallel_session level1 array OK par_ksh_env_parallel_session l1var par_ksh_env_parallel_session l1func par_ksh_env_parallel_session l1alias par_ksh_env_parallel_session level1 array OK par_ksh_env_parallel_session l2var par_ksh_env_parallel_session l2func par_ksh_env_parallel_session l2alias par_ksh_env_parallel_session level2 array OK par_ksh_env_parallel_session l2var par_ksh_env_parallel_session l2func par_ksh_env_parallel_session l2alias par_ksh_env_parallel_session level2 array OK par_ksh_env_parallel_session ### level0+1+2 should be transferred par_ksh_env_parallel_session l0var par_ksh_env_parallel_session l0func par_ksh_env_parallel_session l0alias par_ksh_env_parallel_session level0 array OK par_ksh_env_parallel_session l0var par_ksh_env_parallel_session l0func par_ksh_env_parallel_session l0alias par_ksh_env_parallel_session level0 array OK par_ksh_env_parallel_session l1var par_ksh_env_parallel_session l1func par_ksh_env_parallel_session l1alias par_ksh_env_parallel_session level1 array OK par_ksh_env_parallel_session l1var par_ksh_env_parallel_session l1func par_ksh_env_parallel_session l1alias par_ksh_env_parallel_session level1 array OK par_ksh_env_parallel_session l2var par_ksh_env_parallel_session l2func par_ksh_env_parallel_session l2alias par_ksh_env_parallel_session level2 array OK par_ksh_env_parallel_session l2var par_ksh_env_parallel_session l2func par_ksh_env_parallel_session l2alias par_ksh_env_parallel_session level2 array OK par_ksh_env_parallel_session /bin/ksh: line 3: aliasbefore: not found par_ksh_env_parallel_session /bin/ksh: line 3: aliasbefore: not found par_ksh_env_parallel_session /bin/ksh: line 3: funcbefore: not found par_ksh_env_parallel_session /bin/ksh: line 3: funcbefore: not found par_ksh_env_parallel_session no_before par_ksh_env_parallel_session no_before par_ksh_env_parallel_session no_before par_ksh_env_parallel_session no_before par_ksh_env_parallel_session after aliasafter_OK par_ksh_env_parallel_session after aliasafter_OK par_ksh_env_parallel_session after funcafter_OK par_ksh_env_parallel_session after funcafter_OK par_ksh_env_parallel_session after varafter_OK par_ksh_env_parallel_session after varafter_OK par_ksh_env_parallel_session array after arrayafter_OK par_ksh_env_parallel_session array after arrayafter_OK par_ksh_env_parallel OK par_ksh_env_parallel OK par_ksh_env_parallel alias line 1 par_ksh_env_parallel alias line 1 par_ksh_env_parallel alias line 2 par_ksh_env_parallel alias line 2 par_ksh_env_parallel alias line 3 par_ksh_env_parallel alias line 3 par_ksh_env_parallel alias2 line 1 par_ksh_env_parallel alias2 line 1 par_ksh_env_parallel bug #50435: Remote fifo broke in 20150522 par_ksh_env_parallel bug #52534: Tail of multiline alias is ignored par_ksh_env_parallel data from stdin par_ksh_env_parallel data from stdin par_ksh_env_parallel env_parallel: Warning: Alias "myalias" contains newline. par_ksh_env_parallel env_parallel: Warning: Alias "myalias" contains newline. par_ksh_env_parallel env_parallel: Warning: Alias "myalias2" contains newline. par_ksh_env_parallel env_parallel: Warning: Alias "myalias2" contains newline. par_ksh_env_parallel env_parallel: Warning: Make sure the command has at least one newline after "myalias". par_ksh_env_parallel env_parallel: Warning: Make sure the command has at least one newline after "myalias". par_ksh_env_parallel env_parallel: Warning: Make sure the command has at least one newline after "myalias2". par_ksh_env_parallel env_parallel: Warning: Make sure the command has at least one newline after "myalias2". par_ksh_env_parallel env_parallel: Warning: See BUGS in "man env_parallel". par_ksh_env_parallel env_parallel: Warning: See BUGS in "man env_parallel". par_ksh_env_parallel env_parallel: Warning: See BUGS in "man env_parallel". par_ksh_env_parallel env_parallel: Warning: See BUGS in "man env_parallel". par_fish_underscore ### fish par_fish_underscore Fish is broken par_fish_underscore ### Testing of --env _ par_fish_underscore variables in aliases and arrays in functions work par_fish_underscore variables in aliases and arrays in functions work par_fish_underscore variables in aliases and arrays in functions work par_fish_underscore variables in aliases and arrays in functions work par_fish_underscore variables in aliases and arrays in functions work par_fish_underscore variables in aliases and arrays in functions work par_fish_underscore not_copied_alias 'error=OK' par_fish_underscore ^ par_fish_underscore not_copied_func 'error=OK' par_fish_underscore ^ par_fish_underscore error=OK par_fish_underscore error=OK par_fish_underscore aliases and arrays in functions work par_fish_underscore aliases and arrays in functions work par_fish_underscore aliases functions work par_fish_underscore aliases functions work par_fish_underscore myecho $myarray functions $argv par_fish_underscore ^ par_fish_underscore in function 'myfunc' with arguments 'work' par_fish_underscore OK if ^^^^^^^^^^^^^^^^^ no myecho par_fish_underscore myecho $myarray functions $argv par_fish_underscore ^ par_fish_underscore in function 'myfunc' with arguments 'work' par_fish_underscore OK if ^^^^^^^^^^^^^^^^^ no myecho par_fish_underscore myfunc work par_fish_underscore ^ par_fish_underscore OK if ^^^^^^^^^^^^^^^^^ no myfunc par_fish_underscore myfunc work par_fish_underscore ^ par_fish_underscore OK if ^^^^^^^^^^^^^^^^^ no myfunc par_fish_parset Not implemented par_fish_man ### fish par_fish_man Unknown option: no-such-option par_fish_man variables with = & " ! ' work par_fish_man variables with = & " ! ' work par_fish_man variables with = & " ! ' work par_fish_man variables with = & " ! ' work par_fish_man variables with = & " ! ' work par_fish_man ### From man env_parallel par_fish_man aliases with = & " ! ' work par_fish_man aliases with = & " ! ' work par_fish_man aliases with = & " ! ' work par_fish_man aliases with = & " ! ' work par_fish_man aliases with = & " ! ' work par_fish_man arrays par_fish_man arrays par_fish_man arrays par_fish_man arrays par_fish_man arrays with = & " ! ' work, too par_fish_man env_parallel par_fish_man exit value 2 should be 2 par_fish_man exit value 255 should be 255 `sleep 1` par_fish_man functions with = & " ! ' work par_fish_man functions with = & " ! ' work par_fish_man functions with = & " ! ' work par_fish_man functions with = & " ! ' work par_fish_man functions with = & " ! ' work par_fish_man level par_fish_man multi par_fish_man multiline par_fish_man multiline par_fish_man multiline par_fish_man multiline par_fish_man multiline par_fish_man too par_fish_man too par_fish_man too par_fish_man too par_fish_man variables with = & " ! ' work par_fish_man variables with = & " ! ' work par_fish_man variables with = & " ! ' work par_fish_man variables with = & " ! ' work par_fish_man variables with = & " ! ' work par_fish_man with = & " ! ' par_fish_man with = & " ! ' par_fish_man with = & " ! ' par_fish_man with = & " ! ' par_fish_man work, par_fish_man work, par_fish_man work, par_fish_man work, par_fish_funky env_parallel: Warning: ASCII value 1 in variables is not supported par_fish_funky 3 arg alias_works par_fish_funky env_parallel: Warning: ASCII value 1 in variables is not supported par_fish_funky function_works par_fish_funky myvar works par_fish_funky myenvvar works par_fish_funky space 6 par_fish_funky par_fish_funky par_fish_funky par_fish_funky Funky- par_fish_funky  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~-funky par_fish_funky Funkyenv- par_fish_funky  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~-funkyenv par_fish_funky par_fish_funky par_fish_funky par_fish_funky env_parallel: Warning: ASCII value 1 in variables is not supported par_fish_funky 3 arg alias_works_over_ssh par_fish_funky env_parallel: Warning: ASCII value 1 in variables is not supported par_fish_funky function_works_over_ssh par_fish_funky myvar works par_fish_funky myenvvar works par_fish_funky space 6 par_fish_funky par_fish_funky par_fish_funky par_fish_funky Funky- par_fish_funky  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~-funky par_fish_funky Funkyenv- par_fish_funky  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~-funkyenv par_fish_funky par_fish_funky par_fish_funky par_fish_funky par_fish_funky ' par_fish_funky  !"#$%&'"'"'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~' par_fish_environment_too_big Not implemented par_fish_env_parallel_session ### Test env_parallel --session par_fish_env_parallel_session fish: Unknown command: aliasbefore par_fish_env_parallel_session fish: par_fish_env_parallel_session aliasbefore must_fail par_fish_env_parallel_session ^ par_fish_env_parallel_session fish: Unknown command: aliasbefore par_fish_env_parallel_session fish: par_fish_env_parallel_session aliasbefore must_fail par_fish_env_parallel_session ^ par_fish_env_parallel_session fish: Unknown command: funcbefore par_fish_env_parallel_session fish: par_fish_env_parallel_session funcbefore must_fail par_fish_env_parallel_session ^ par_fish_env_parallel_session fish: Unknown command: funcbefore par_fish_env_parallel_session fish: par_fish_env_parallel_session funcbefore must_fail par_fish_env_parallel_session ^ par_fish_env_parallel_session no_before par_fish_env_parallel_session no_before par_fish_env_parallel_session no_before par_fish_env_parallel_session no_before par_fish_env_parallel_session after aliasafter_OK par_fish_env_parallel_session after aliasafter_OK par_fish_env_parallel_session after funcafter_OK par_fish_env_parallel_session after funcafter_OK par_fish_env_parallel_session after varafter_OK par_fish_env_parallel_session after varafter_OK par_fish_env_parallel_session array after arrayafter_OK par_fish_env_parallel_session array after arrayafter_OK par_fish_env_parallel bug #50435: Remote fifo broke in 20150522 par_fish_env_parallel data from stdin par_fish_env_parallel OK par_fish_env_parallel data from stdin par_fish_env_parallel OK par_fish_env_parallel OK: 0==0 par_fish_env_parallel ### Test failing command with --cat par_fish_env_parallel data from stdin par_fish_env_parallel OK: 1==1 par_fish_env_parallel data from stdin par_fish_env_parallel OK: 1==1 par_dash_underscore ### dash par_dash_underscore ### Testing of --env _ par_dash_underscore variables in aliases work par_dash_underscore variables in aliases work par_dash_underscore variables in aliases work par_dash_underscore variables in aliases work par_dash_underscore /bin/dash: 3: not_copied_alias: not found par_dash_underscore error=OK par_dash_underscore aliases work par_dash_underscore aliases work par_dash_underscore /bin/dash: 1: myecho: not found par_dash_underscore OK if no myecho ^^^^^^^^^^^^^^^^^ par_dash_underscore /bin/dash: 1: myecho: not found par_dash_underscore OK if no myecho ^^^^^^^^^^^^^^^^^ par_dash_parset parset par_dash_parset ### parset into vars with comma par_dash_parset foo bar baz par_dash_parset ### parset into vars with space par_dash_parset foo bar baz par_dash_parset ### parset with newlines par_dash_parset 1 par_dash_parset 1 par_dash_parset 2 par_dash_parset 1 par_dash_parset 2 par_dash_parset 3 par_dash_parset ### env_parset par_dash_parset myecho myvar foo myecho myvar bar myecho myvar baz par_dash_parset myecho myvar foo myecho myvar bar myecho myvar baz par_dash_parset newline1 par_dash_parset newline2 par_dash_parset 1 par_dash_parset newline1 par_dash_parset newline2 par_dash_parset 1 par_dash_parset 2 par_dash_parset newline1 par_dash_parset newline2 par_dash_parset 1 par_dash_parset 2 par_dash_parset 3 par_dash_parset Exit value 2 = 2 par_dash_parset Exit value 2 = 2 par_dash_man ### dash par_dash_man ### From man env_parallel par_dash_man aliases with = & " ! ' work par_dash_man aliases with = & " ! ' work par_dash_man aliases with = & " ! ' work par_dash_man aliases with = & " ! ' work par_dash_man aliases with = & " ! ' work par_dash_man multiline par_dash_man aliases with = & " ! ' work par_dash_man multiline par_dash_man aliases with = & " ! ' work par_dash_man multiline par_dash_man aliases with = & " ! ' work par_dash_man multiline par_dash_man aliases with = & " ! ' work par_dash_man multiline par_dash_man aliases with = & " ! ' work par_dash_man variables with = & " ! ' work par_dash_man variables with = & " ! ' work par_dash_man variables with = & " ! ' work par_dash_man variables with = & " ! ' work par_dash_man variables with = & " ! ' work par_dash_man multiline par_dash_man variables with = & " ! ' work par_dash_man multiline par_dash_man variables with = & " ! ' work par_dash_man multiline par_dash_man variables with = & " ! ' work par_dash_man multiline par_dash_man variables with = & " ! ' work par_dash_man multiline par_dash_man variables with = & " ! ' work par_dash_man exit value 2 should be 2 par_dash_man Unknown option: no-such-option par_dash_man exit value 255 should be 255 par_dash_funky par_dash_funky ' ' par_dash_funky ' par_dash_funky  !"#$%&'"'"'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~' par_dash_funky 3 arg alias_works par_dash_funky 3 arg alias_works_over_ssh par_dash_environment_too_big bug #50815: env_parallel should warn if the environment is too big par_dash_environment_too_big OK_bigvar par_dash_environment_too_big OK_bigvar_remote par_dash_environment_too_big OK_bigvar_quote par_dash_environment_too_big OK_bigvar_quote_remote par_dash_environment_too_big OK_bigfunc par_dash_environment_too_big OK_bigfunc_remote par_dash_environment_too_big OK_bigfunc_quote par_dash_environment_too_big OK_bigfunc_quote_remote par_dash_environment_too_big Rest should fail - functions not supported in dash par_dash_environment_too_big dash: XXX: perl: Argument list too long par_dash_environment_too_big env_parallel: Error: Your environment is too big. par_dash_environment_too_big env_parallel: Error: You can try 3 different approaches: par_dash_environment_too_big env_parallel: Error: 1. Run 'env_parallel --session' before you set par_dash_environment_too_big env_parallel: Error: variables or define functions. par_dash_environment_too_big env_parallel: Error: 2. Use --env and only mention the names to copy. par_dash_environment_too_big env_parallel: Error: 3. Try running this in a clean environment once: par_dash_environment_too_big env_parallel: Error: env_parallel --record-env par_dash_environment_too_big env_parallel: Error: And then use '--env _' par_dash_environment_too_big env_parallel: Error: For details see: man env_parallel par_dash_environment_too_big parallel: Error: Command line too long (XXX >= XXX) at input 0: fail_bigvar_remote par_dash_environment_too_big dash: XXX: perl: Argument list too long par_dash_environment_too_big env_parallel: Error: Your environment is too big. par_dash_environment_too_big env_parallel: Error: You can try 3 different approaches: par_dash_environment_too_big env_parallel: Error: 1. Run 'env_parallel --session' before you set par_dash_environment_too_big env_parallel: Error: variables or define functions. par_dash_environment_too_big env_parallel: Error: 2. Use --env and only mention the names to copy. par_dash_environment_too_big env_parallel: Error: 3. Try running this in a clean environment once: par_dash_environment_too_big env_parallel: Error: env_parallel --record-env par_dash_environment_too_big env_parallel: Error: And then use '--env _' par_dash_environment_too_big env_parallel: Error: For details see: man env_parallel par_dash_environment_too_big parallel: Error: Command line too long (XXX >= XXX) at input 0: fail_bigvar_quote_remote par_dash_environment_too_big fail_bigfunc-not-supported par_dash_environment_too_big fail_bigfunc_remote-not-supported par_dash_environment_too_big fail_bigfunc_quote-not-supported par_dash_environment_too_big fail_bigfunc_quote_remote-not-supported par_dash_env_parallel_session ### Test env_parallel --session par_dash_env_parallel_session ### level0 should be hidden, level1 should be transferred par_dash_env_parallel_session par_dash_env_parallel_session /bin/dash: XXX: level0func: not found par_dash_env_parallel_session /bin/dash: XXX: level0alias: not found par_dash_env_parallel_session /bin/dash: XXX: Bad substitution par_dash_env_parallel_session par_dash_env_parallel_session /bin/dash: XXX: level0func: not found par_dash_env_parallel_session /bin/dash: XXX: level0alias: not found par_dash_env_parallel_session /bin/dash: XXX: Bad substitution par_dash_env_parallel_session l1var par_dash_env_parallel_session l1alias par_dash_env_parallel_session /bin/dash: XXX: level1func: not found par_dash_env_parallel_session /bin/dash: XXX: Bad substitution par_dash_env_parallel_session l1var par_dash_env_parallel_session l1alias par_dash_env_parallel_session /bin/dash: XXX: level1func: not found par_dash_env_parallel_session /bin/dash: XXX: Bad substitution par_dash_env_parallel_session ### level0+1 should be hidden, level2 should be transferred par_dash_env_parallel_session par_dash_env_parallel_session /bin/dash: 3: level0func: not found par_dash_env_parallel_session /bin/dash: 3: level0alias: not found par_dash_env_parallel_session /bin/dash: 3: Bad substitution par_dash_env_parallel_session par_dash_env_parallel_session /bin/dash: 3: level0func: not found par_dash_env_parallel_session /bin/dash: 3: level0alias: not found par_dash_env_parallel_session /bin/dash: 3: Bad substitution par_dash_env_parallel_session par_dash_env_parallel_session /bin/dash: 3: level1func: not found par_dash_env_parallel_session /bin/dash: 3: level1alias: not found par_dash_env_parallel_session /bin/dash: 3: Bad substitution par_dash_env_parallel_session par_dash_env_parallel_session /bin/dash: 3: level1func: not found par_dash_env_parallel_session /bin/dash: 3: level1alias: not found par_dash_env_parallel_session /bin/dash: 3: Bad substitution par_dash_env_parallel_session l2var par_dash_env_parallel_session l2alias par_dash_env_parallel_session /bin/dash: 3: level2func: not found par_dash_env_parallel_session /bin/dash: 3: Bad substitution par_dash_env_parallel_session l2var par_dash_env_parallel_session l2alias par_dash_env_parallel_session /bin/dash: 3: level2func: not found par_dash_env_parallel_session /bin/dash: 3: Bad substitution par_dash_env_parallel_session ### level0 should be hidden, level1+2 should be transferred par_dash_env_parallel_session par_dash_env_parallel_session /bin/dash: XXX: level0func: not found par_dash_env_parallel_session /bin/dash: XXX: level0alias: not found par_dash_env_parallel_session /bin/dash: XXX: Bad substitution par_dash_env_parallel_session par_dash_env_parallel_session /bin/dash: XXX: level0func: not found par_dash_env_parallel_session /bin/dash: XXX: level0alias: not found par_dash_env_parallel_session /bin/dash: XXX: Bad substitution par_dash_env_parallel_session l1var par_dash_env_parallel_session l1alias par_dash_env_parallel_session /bin/dash: XXX: level1func: not found par_dash_env_parallel_session /bin/dash: XXX: Bad substitution par_dash_env_parallel_session l1var par_dash_env_parallel_session l1alias par_dash_env_parallel_session /bin/dash: XXX: level1func: not found par_dash_env_parallel_session /bin/dash: XXX: Bad substitution par_dash_env_parallel_session l2var par_dash_env_parallel_session l2alias par_dash_env_parallel_session /bin/dash: XXX: level2func: not found par_dash_env_parallel_session /bin/dash: XXX: Bad substitution par_dash_env_parallel_session l2var par_dash_env_parallel_session l2alias par_dash_env_parallel_session /bin/dash: XXX: level2func: not found par_dash_env_parallel_session /bin/dash: XXX: Bad substitution par_dash_env_parallel_session ### level0+1+2 should be transferred par_dash_env_parallel_session l0var par_dash_env_parallel_session l0alias par_dash_env_parallel_session /bin/dash: XXX: level0func: not found par_dash_env_parallel_session /bin/dash: XXX: Bad substitution par_dash_env_parallel_session l0var par_dash_env_parallel_session l0alias par_dash_env_parallel_session /bin/dash: XXX: level0func: not found par_dash_env_parallel_session /bin/dash: XXX: Bad substitution par_dash_env_parallel_session l1var par_dash_env_parallel_session l1alias par_dash_env_parallel_session /bin/dash: XXX: level1func: not found par_dash_env_parallel_session /bin/dash: XXX: Bad substitution par_dash_env_parallel_session l1var par_dash_env_parallel_session l1alias par_dash_env_parallel_session /bin/dash: XXX: level1func: not found par_dash_env_parallel_session /bin/dash: XXX: Bad substitution par_dash_env_parallel_session l2var par_dash_env_parallel_session l2alias par_dash_env_parallel_session /bin/dash: XXX: level2func: not found par_dash_env_parallel_session /bin/dash: XXX: Bad substitution par_dash_env_parallel_session l2var par_dash_env_parallel_session l2alias par_dash_env_parallel_session /bin/dash: XXX: level2func: not found par_dash_env_parallel_session /bin/dash: XXX: Bad substitution par_dash_env_parallel_session /bin/dash: 1: aliasbefore: not found par_dash_env_parallel_session /bin/dash: 1: aliasbefore: not found par_dash_env_parallel_session no_before par_dash_env_parallel_session no_before par_dash_env_parallel_session after aliasafter_OK par_dash_env_parallel_session after aliasafter_OK par_dash_env_parallel_session after varafter_OK par_dash_env_parallel_session after varafter_OK par_dash_env_parallel OK par_dash_env_parallel OK par_dash_env_parallel alias line 1 par_dash_env_parallel alias line 1 par_dash_env_parallel alias line 2 par_dash_env_parallel alias line 2 par_dash_env_parallel alias line 3 par_dash_env_parallel alias line 3 par_dash_env_parallel alias2 line 1 par_dash_env_parallel alias2 line 1 par_dash_env_parallel alias2 line 2 par_dash_env_parallel alias2 line 2 par_dash_env_parallel bug #50435: Remote fifo broke in 20150522 par_dash_env_parallel bug #52534: Tail of multiline alias is ignored par_dash_env_parallel data from stdin par_dash_env_parallel data from stdin par_csh_underscore ### csh par_csh_underscore ### Testing of --env _ par_csh_underscore par_csh_underscore #: Command not found. par_csh_underscore par_csh_underscore variables and arrays in aliases work par_csh_underscore par_csh_underscore variables and arrays in aliases work par_csh_underscore par_csh_underscore variables and arrays in aliases work par_csh_underscore par_csh_underscore variables and arrays in aliases work par_csh_underscore par_csh_underscore variables and arrays in aliases work par_csh_underscore par_csh_underscore variables and arrays in aliases work par_csh_underscore par_csh_underscore myvar: Undefined variable. par_csh_underscore par_csh_underscore myvar: Undefined variable. par_csh_underscore par_csh_underscore myarray: Undefined variable. par_csh_underscore par_csh_underscore myarray: Undefined variable. par_csh_underscore par_csh_underscore myecho: Command not found. par_csh_underscore par_csh_underscore OK ^^^^^^^^^^^^^^^^^ if no myecho par_csh_underscore par_csh_underscore myecho: Command not found. par_csh_underscore par_csh_underscore OK ^^^^^^^^^^^^^^^^^ if no myecho par_csh_underscore par_csh_underscore Connection to lo closed. par_csh_underscore par_csh_parset Not implemented par_csh_man ### csh par_csh_man par_csh_man par_csh_man par_csh_man par_csh_man par_csh_man par_csh_man par_csh_man par_csh_man par_csh_man {+/}/{/..}.{+..} = {...}.{+...} = {+/}/{/...}.{+...} par_csh_man ### From man env_parallel par_csh_man --colsep regexp Split input on regexp for positional replacements par_csh_man --nonall Run the given command with no arguments on all sshlogins par_csh_man --onall Run the given command with argument on all sshlogins par_csh_man --pipe Split stdin (standard input) to multiple jobs. par_csh_man --recend str Record end separator for --pipe. par_csh_man --recstart str Record start separator for --pipe. par_csh_man --slf .. Use ~/.parallel/sshloginfile as the list of sshlogins par_csh_man --trc {}.bar Shorthand for --transfer --return {}.bar --cleanup par_csh_man -S sshlogin Example: foo@server.example.com par_csh_man -X Multiple arguments with context replace par_csh_man -j n Run n jobs in parallel par_csh_man -k Keep same order par_csh_man Academic tradition requires you to cite works you base your article on. par_csh_man GNU Parallel can do much more. See 'man parallel' for details par_csh_man If you pay 10000 EUR you should feel free to use GNU Parallel without citing. par_csh_man If you use programs that use GNU Parallel to process data for an article in a par_csh_man This helps funding further development; AND IT WON'T COST YOU A CENT. par_csh_man Unknown option: no-such-option par_csh_man Usage: par_csh_man With --plus: {} = {+/}/{/} = {.}.{+.} = {+/}/{/.}.{+.} = {..}.{+..} = par_csh_man aliases with = & " work par_csh_man aliases with = & " work par_csh_man aliases with = & " work par_csh_man aliases with = & " work par_csh_man arrays par_csh_man arrays par_csh_man arrays par_csh_man arrays par_csh_man cat ... | parallel --pipe [options] [command [arguments]] par_csh_man env_parallel par_csh_man exit value 2 should be 2 par_csh_man exit value 255 should be 255 par_csh_man level par_csh_man multi par_csh_man parallel [options] [command [arguments]] (::: arguments|:::: argfile(s))... par_csh_man parallel [options] [command [arguments]] < list_of_arguments par_csh_man scientific publication, please cite: par_csh_man too par_csh_man too par_csh_man too par_csh_man too par_csh_man variables with = & " work par_csh_man variables with = & " work par_csh_man variables with = & " work par_csh_man variables with = & " work par_csh_man with=&"' par_csh_man with=&"' par_csh_man with=&"' par_csh_man with=&"' par_csh_man work, par_csh_man work, par_csh_man work, par_csh_man work, par_csh_man {3} {3.} {3/} {3/.} {=3 perl code =} Positional replacement strings par_csh_man {} {.} {/} {/.} {#} {%} {= perl code =} Replacement strings par_csh_funky 3 arg alias_works par_csh_funky par_csh_funky myvar works par_csh_funky space special chars problem par_csh_funky Funky- par_csh_funky  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~-funky alias_var_works par_csh_funky func_echo: Command not found. par_csh_funky 3 arg alias_works_over_ssh par_csh_funky par_csh_funky myvar works par_csh_funky space special chars problem par_csh_funky Funky- par_csh_funky  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~-funky alias_var_works_over_ssh par_csh_funky func_echo: Command not found. par_csh_funky par_csh_funky \\\\\\\\ \ \ \ \ par_csh_funky \\\\\\\\\\\\\\ \!\"\#\$%\&\'\(\)\*+,-./0123456789:\;\<\=\>\?@ABCDEFGHIJKLMNOPQRSTUVWXYZ\[\\\]\^_\`abcdefghijklmnopqrstuvwxyz\{\|\}\~\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ par_csh_environment_too_big Not implemented par_csh_env_parallel_session Not implemented par_csh_env_parallel bug #50435: Remote fifo broke in 20150522 par_csh_env_parallel data from stdin par_csh_env_parallel OK par_csh_env_parallel data from stdin par_csh_env_parallel OK par_bash_underscore ### bash par_bash_underscore ### Testing of --env _ par_bash_underscore variables in aliases in and arrays in functions work par_bash_underscore variables in aliases in and arrays in functions work par_bash_underscore variables in aliases in and arrays in functions work par_bash_underscore variables in aliases in and arrays in functions work par_bash_underscore variables in aliases in and arrays in functions work par_bash_underscore variables in aliases in and arrays in functions work par_bash_underscore /bin/bash: line XX: not_copied_alias: command not found par_bash_underscore /bin/bash: line XX: not_copied_func: command not found par_bash_underscore error=OK par_bash_underscore error=OK par_bash_underscore aliases in and arrays in functions work par_bash_underscore aliases in and arrays in functions work par_bash_underscore aliases in functions work par_bash_underscore aliases in functions work par_bash_underscore /bin/bash: line XX: myecho: command not found par_bash_underscore OK if no myecho ^^^^^^^^^^^^^^^^^^^^^^^^^ par_bash_underscore /bin/bash: line XX: myecho: command not found par_bash_underscore OK if no myecho ^^^^^^^^^^^^^^^^^^^^^^^^^ par_bash_underscore /bin/bash: line XX: myfunc: command not found par_bash_underscore OK if no myfunc ^^^^^^^^^^^^^^^^^^^^^^^^^ par_bash_underscore /bin/bash: line XX: myfunc: command not found par_bash_underscore OK if no myfunc ^^^^^^^^^^^^^^^^^^^^^^^^^ par_bash_parset parset par_bash_parset ### parset into array par_bash_parset foo bar baz par_bash_parset ### parset into vars with comma par_bash_parset foo bar baz par_bash_parset ### parset into vars with space par_bash_parset foo bar baz par_bash_parset ### parset with newlines par_bash_parset 1 par_bash_parset 1 par_bash_parset 2 par_bash_parset 1 par_bash_parset 2 par_bash_parset 3 par_bash_parset ### parset into indexed array vars par_bash_parset foo bar baz par_bash_parset foo bar baz par_bash_parset ### env_parset par_bash_parset myecho myvar myarr 1 myfun foo myecho myvar myarr 1 myfun bar myecho myvar myarr 1 myfun baz par_bash_parset myecho myvar myarr 1 myfun foo myecho myvar myarr 1 myfun bar myecho myvar myarr 1 myfun baz par_bash_parset myecho myvar myarr 1 myfun foo myecho myvar myarr 1 myfun bar myecho myvar myarr 1 myfun baz par_bash_parset newline1 par_bash_parset newline2 par_bash_parset 1 par_bash_parset newline1 par_bash_parset newline2 par_bash_parset 1 par_bash_parset 2 par_bash_parset newline1 par_bash_parset newline2 par_bash_parset 1 par_bash_parset 2 par_bash_parset 3 par_bash_parset myecho myvar myarr 1 myfun foo myecho myvar myarr 1 myfun bar myecho myvar myarr 1 myfun baz par_bash_parset myecho myvar myarr 1 myfun foo myecho myvar myarr 1 myfun bar myecho myvar myarr 1 myfun baz par_bash_parset Exit value 2 = 2 par_bash_parset Exit value 2 = 2 par_bash_man ### bash par_bash_man ### From man env_parallel par_bash_man aliases with = & " ! ' work par_bash_man aliases with = & " ! ' work par_bash_man aliases with = & " ! ' work par_bash_man aliases with = & " ! ' work par_bash_man aliases with = & " ! ' work par_bash_man multiline par_bash_man aliases with = & " ! ' work par_bash_man env_parallel: Warning: Alias 'multiline' contains newline. par_bash_man env_parallel: Warning: Make sure the command has at least one newline after 'multiline'. par_bash_man env_parallel: Warning: See BUGS in 'man env_parallel'. par_bash_man multiline par_bash_man aliases with = & " ! ' work par_bash_man but only when followed by a newline par_bash_man env_parallel: Warning: Alias 'multiline' contains newline. par_bash_man env_parallel: Warning: Make sure the command has at least one newline after 'multiline'. par_bash_man env_parallel: Warning: See BUGS in 'man env_parallel'. par_bash_man multiline par_bash_man aliases with = & " ! ' work par_bash_man but only when followed by a newline par_bash_man env_parallel: Warning: Alias 'multiline' contains newline. par_bash_man env_parallel: Warning: Make sure the command has at least one newline after 'multiline'. par_bash_man env_parallel: Warning: See BUGS in 'man env_parallel'. par_bash_man multiline par_bash_man aliases with = & " ! ' work par_bash_man but only when followed by a newline par_bash_man env_parallel: Warning: Alias 'multiline' contains newline. par_bash_man env_parallel: Warning: Make sure the command has at least one newline after 'multiline'. par_bash_man env_parallel: Warning: See BUGS in 'man env_parallel'. par_bash_man multiline par_bash_man aliases with = & " ! ' work par_bash_man but only when followed by a newline par_bash_man functions with = & " ! ' work par_bash_man functions with = & " ! ' work par_bash_man functions with = & " ! ' work par_bash_man functions with = & " ! ' work par_bash_man functions with = & " ! ' work par_bash_man variables with = & " ! ' work par_bash_man variables with = & " ! ' work par_bash_man variables with = & " ! ' work par_bash_man variables with = & " ! ' work par_bash_man variables with = & " ! ' work par_bash_man multiline par_bash_man variables with = & " ! ' work par_bash_man multiline par_bash_man variables with = & " ! ' work par_bash_man multiline par_bash_man variables with = & " ! ' work par_bash_man multiline par_bash_man variables with = & " ! ' work par_bash_man multiline par_bash_man variables with = & " ! ' work par_bash_man arrays with = & " ! ' work, too par_bash_man arrays par_bash_man with = & " ! ' par_bash_man work, par_bash_man too par_bash_man arrays par_bash_man with = & " ! ' par_bash_man work, par_bash_man too par_bash_man arrays par_bash_man with = & " ! ' par_bash_man work, par_bash_man too par_bash_man arrays par_bash_man with = & " ! ' par_bash_man work, par_bash_man too par_bash_man multi par_bash_man level par_bash_man env_parallel par_bash_man exit value 2 should be 2 par_bash_man Unknown option: no-such-option par_bash_man exit value 255 should be 255 par_bash_funky par_bash_funky  par_bash_funky  par_bash_funky -funkymultiline par_bash_funky -funkymultiline par_bash_funky space 6 par_bash_funky space 6 par_bash_funky ' ' par_bash_funky ' ' par_bash_funky ' par_bash_funky  !"#$%&'"'"'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~' par_bash_funky 3 arg alias_works par_bash_funky 3 arg alias_works_over_ssh par_bash_funky Funkyline- par_bash_funky  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~-funkyline par_bash_funky Funkyline- par_bash_funky  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~-funkyline par_bash_funky Funkymultiline- par_bash_funky Funkymultiline- par_bash_funky assoc_val_a par_bash_funky assoc_val_a par_bash_funky function_works par_bash_funky function_works_over_ssh par_bash_funky myvar works par_bash_funky myvar works par_bash_environment_too_big bug #50815: env_parallel should warn if the environment is too big par_bash_environment_too_big OK_bigvar par_bash_environment_too_big OK_bigvar_remote par_bash_environment_too_big OK_bigvar_quote par_bash_environment_too_big OK_bigvar_quote_remote par_bash_environment_too_big OK_bigfunc par_bash_environment_too_big OK_bigfunc_remote par_bash_environment_too_big OK_bigfunc_quote par_bash_environment_too_big OK_bigfunc_quote_remote par_bash_environment_too_big Rest should fail par_bash_environment_too_big /usr/local/bin/env_parallel.bash: line XXX: /bin/perl: Argument list too long par_bash_environment_too_big env_parallel: Error: Your environment is too big. par_bash_environment_too_big env_parallel: Error: You can try 3 different approaches: par_bash_environment_too_big env_parallel: Error: 1. Run 'env_parallel --session' before you set par_bash_environment_too_big env_parallel: Error: variables or define functions. par_bash_environment_too_big env_parallel: Error: 2. Use --env and only mention the names to copy. par_bash_environment_too_big env_parallel: Error: 3. Try running this in a clean environment once: par_bash_environment_too_big env_parallel: Error: env_parallel --record-env par_bash_environment_too_big env_parallel: Error: And then use '--env _' par_bash_environment_too_big env_parallel: Error: For details see: man env_parallel par_bash_environment_too_big parallel: Error: Command line too long (XXX >= XXX) at input 0: fail_bigvar_remote par_bash_environment_too_big /usr/local/bin/env_parallel.bash: line XXX: /bin/perl: Argument list too long par_bash_environment_too_big env_parallel: Error: Your environment is too big. par_bash_environment_too_big env_parallel: Error: You can try 3 different approaches: par_bash_environment_too_big env_parallel: Error: 1. Run 'env_parallel --session' before you set par_bash_environment_too_big env_parallel: Error: variables or define functions. par_bash_environment_too_big env_parallel: Error: 2. Use --env and only mention the names to copy. par_bash_environment_too_big env_parallel: Error: 3. Try running this in a clean environment once: par_bash_environment_too_big env_parallel: Error: env_parallel --record-env par_bash_environment_too_big env_parallel: Error: And then use '--env _' par_bash_environment_too_big env_parallel: Error: For details see: man env_parallel par_bash_environment_too_big parallel: Error: Command line too long (XXX >= XXX) at input 0: fail_bigvar_quote_remote par_bash_environment_too_big parallel: Error: Command line too long (XXX >= XXX) at input 0: fail_bigfunc par_bash_environment_too_big parallel: Error: Command line too long (XXX >= XXX) at input 0: fail_bigfunc_remote par_bash_environment_too_big parallel: Error: Command line too long (XXX >= XXX) at input 0: fail_bigfunc_quote par_bash_environment_too_big parallel: Error: Command line too long (XXX >= XXX) at input 0: fail_bigfunc_quote_remote par_bash_env_parallel_session ### Test env_parallel --session / --end-session par_bash_env_parallel_session ### level0 should be hidden, level1 should be transferred par_bash_env_parallel_session par_bash_env_parallel_session fail par_bash_env_parallel_session /bin/bash: line XXX: level0func: command not found par_bash_env_parallel_session /bin/bash: line XXX: level0alias: command not found par_bash_env_parallel_session par_bash_env_parallel_session fail par_bash_env_parallel_session /bin/bash: line XXX: level0func: command not found par_bash_env_parallel_session /bin/bash: line XXX: level0alias: command not found par_bash_env_parallel_session l1var par_bash_env_parallel_session l1func par_bash_env_parallel_session l1alias par_bash_env_parallel_session level1 array OK par_bash_env_parallel_session l1var par_bash_env_parallel_session l1func par_bash_env_parallel_session l1alias par_bash_env_parallel_session level1 array OK par_bash_env_parallel_session ### level0+1 should be hidden, level2 should be transferred par_bash_env_parallel_session par_bash_env_parallel_session fail par_bash_env_parallel_session /bin/bash: line XXX: level0func: command not found par_bash_env_parallel_session /bin/bash: line XXX: level0alias: command not found par_bash_env_parallel_session par_bash_env_parallel_session fail par_bash_env_parallel_session /bin/bash: line XXX: level0func: command not found par_bash_env_parallel_session /bin/bash: line XXX: level0alias: command not found par_bash_env_parallel_session par_bash_env_parallel_session fail par_bash_env_parallel_session /bin/bash: line XXX: level1func: command not found par_bash_env_parallel_session /bin/bash: line XXX: level1alias: command not found par_bash_env_parallel_session par_bash_env_parallel_session fail par_bash_env_parallel_session /bin/bash: line XXX: level1func: command not found par_bash_env_parallel_session /bin/bash: line XXX: level1alias: command not found par_bash_env_parallel_session l2var par_bash_env_parallel_session l2func par_bash_env_parallel_session l2alias par_bash_env_parallel_session level2 array OK par_bash_env_parallel_session l2var par_bash_env_parallel_session l2func par_bash_env_parallel_session l2alias par_bash_env_parallel_session level2 array OK par_bash_env_parallel_session ### level0 should be hidden, level1+2 should be transferred par_bash_env_parallel_session par_bash_env_parallel_session fail par_bash_env_parallel_session /bin/bash: line XXX: level0func: command not found par_bash_env_parallel_session /bin/bash: line XXX: level0alias: command not found par_bash_env_parallel_session par_bash_env_parallel_session fail par_bash_env_parallel_session /bin/bash: line XXX: level0func: command not found par_bash_env_parallel_session /bin/bash: line XXX: level0alias: command not found par_bash_env_parallel_session l1var par_bash_env_parallel_session l1func par_bash_env_parallel_session l1alias par_bash_env_parallel_session level1 array OK par_bash_env_parallel_session l1var par_bash_env_parallel_session l1func par_bash_env_parallel_session l1alias par_bash_env_parallel_session level1 array OK par_bash_env_parallel_session l2var par_bash_env_parallel_session l2func par_bash_env_parallel_session l2alias par_bash_env_parallel_session level2 array OK par_bash_env_parallel_session l2var par_bash_env_parallel_session l2func par_bash_env_parallel_session l2alias par_bash_env_parallel_session level2 array OK par_bash_env_parallel_session ### level0+1+2 should be transferred par_bash_env_parallel_session l0var par_bash_env_parallel_session l0func par_bash_env_parallel_session l0alias par_bash_env_parallel_session level0 array OK par_bash_env_parallel_session l0var par_bash_env_parallel_session l0func par_bash_env_parallel_session l0alias par_bash_env_parallel_session level0 array OK par_bash_env_parallel_session l1var par_bash_env_parallel_session l1func par_bash_env_parallel_session l1alias par_bash_env_parallel_session level1 array OK par_bash_env_parallel_session l1var par_bash_env_parallel_session l1func par_bash_env_parallel_session l1alias par_bash_env_parallel_session level1 array OK par_bash_env_parallel_session l2var par_bash_env_parallel_session l2func par_bash_env_parallel_session l2alias par_bash_env_parallel_session level2 array OK par_bash_env_parallel_session l2var par_bash_env_parallel_session l2func par_bash_env_parallel_session l2alias par_bash_env_parallel_session level2 array OK par_bash_env_parallel_session /bin/bash: line XXX: aliasl0: command not found par_bash_env_parallel_session /bin/bash: line XXX: aliasl0: command not found par_bash_env_parallel_session /bin/bash: line XXX: funcl0: command not found par_bash_env_parallel_session /bin/bash: line XXX: funcl0: command not found par_bash_env_parallel_session no_before par_bash_env_parallel_session no_before par_bash_env_parallel_session no_before par_bash_env_parallel_session no_before par_bash_env_parallel_session l1 aliasl1_OK par_bash_env_parallel_session l1 aliasl1_OK par_bash_env_parallel_session l1 funcl1_OK par_bash_env_parallel_session l1 funcl1_OK par_bash_env_parallel_session l1 varl1_OK par_bash_env_parallel_session l1 varl1_OK par_bash_env_parallel_session array l1 arrayl1_OK par_bash_env_parallel_session array l1 arrayl1_OK par_bash_env_parallel OK par_bash_env_parallel OK par_bash_env_parallel alias line 1 par_bash_env_parallel alias line 1 par_bash_env_parallel alias line 2 par_bash_env_parallel alias line 2 par_bash_env_parallel alias line 3 par_bash_env_parallel alias line 3 par_bash_env_parallel alias2 line 1 par_bash_env_parallel alias2 line 1 par_bash_env_parallel alias2 line 2 par_bash_env_parallel alias2 line 2 par_bash_env_parallel bug #50435: Remote fifo broke in 20150522 par_bash_env_parallel bug #52534: Tail of multiline alias is ignored par_bash_env_parallel data from stdin par_bash_env_parallel data from stdin par_bash_env_parallel env_parallel: Warning: Alias 'myalias' contains newline. par_bash_env_parallel env_parallel: Warning: Alias 'myalias' contains newline. par_bash_env_parallel env_parallel: Warning: Alias 'myalias2' contains newline. par_bash_env_parallel env_parallel: Warning: Alias 'myalias2' contains newline. par_bash_env_parallel env_parallel: Warning: Make sure the command has at least one newline after 'myalias'. par_bash_env_parallel env_parallel: Warning: Make sure the command has at least one newline after 'myalias'. par_bash_env_parallel env_parallel: Warning: Make sure the command has at least one newline after 'myalias2'. par_bash_env_parallel env_parallel: Warning: Make sure the command has at least one newline after 'myalias2'. par_bash_env_parallel env_parallel: Warning: See BUGS in 'man env_parallel'. par_bash_env_parallel env_parallel: Warning: See BUGS in 'man env_parallel'. par_bash_env_parallel env_parallel: Warning: See BUGS in 'man env_parallel'. par_bash_env_parallel env_parallel: Warning: See BUGS in 'man env_parallel'. par_ash_underscore ### ash par_ash_underscore ### Testing of --env _ par_ash_underscore variables in aliases work par_ash_underscore variables in aliases work par_ash_underscore variables in aliases work par_ash_underscore variables in aliases work par_ash_underscore /bin/ash: 3: not_copied_alias: not found par_ash_underscore error=OK par_ash_underscore aliases work par_ash_underscore aliases work par_ash_underscore /bin/ash: 1: myecho: not found par_ash_underscore OK if no myecho ^^^^^^^^^^^^^^^^^ par_ash_underscore /bin/ash: 1: myecho: not found par_ash_underscore OK if no myecho ^^^^^^^^^^^^^^^^^ par_ash_parset parset par_ash_parset ### parset into vars with comma par_ash_parset foo bar baz par_ash_parset ### parset into vars with space par_ash_parset foo bar baz par_ash_parset ### parset with newlines par_ash_parset 1 par_ash_parset 1 par_ash_parset 2 par_ash_parset 1 par_ash_parset 2 par_ash_parset 3 par_ash_parset ### env_parset par_ash_parset myecho myvar foo myecho myvar bar myecho myvar baz par_ash_parset myecho myvar foo myecho myvar bar myecho myvar baz par_ash_parset newline1 par_ash_parset newline2 par_ash_parset 1 par_ash_parset newline1 par_ash_parset newline2 par_ash_parset 1 par_ash_parset 2 par_ash_parset newline1 par_ash_parset newline2 par_ash_parset 1 par_ash_parset 2 par_ash_parset 3 par_ash_parset Exit value 2 = 2 par_ash_parset Exit value 2 = 2 par_ash_man ### ash par_ash_man ### From man env_parallel par_ash_man aliases with = & " ! ' work par_ash_man aliases with = & " ! ' work par_ash_man aliases with = & " ! ' work par_ash_man aliases with = & " ! ' work par_ash_man aliases with = & " ! ' work par_ash_man multiline par_ash_man aliases with = & " ! ' work par_ash_man multiline par_ash_man aliases with = & " ! ' work par_ash_man multiline par_ash_man aliases with = & " ! ' work par_ash_man multiline par_ash_man aliases with = & " ! ' work par_ash_man multiline par_ash_man aliases with = & " ! ' work par_ash_man variables with = & " ! ' work par_ash_man variables with = & " ! ' work par_ash_man variables with = & " ! ' work par_ash_man variables with = & " ! ' work par_ash_man variables with = & " ! ' work par_ash_man multiline par_ash_man variables with = & " ! ' work par_ash_man multiline par_ash_man variables with = & " ! ' work par_ash_man multiline par_ash_man variables with = & " ! ' work par_ash_man multiline par_ash_man variables with = & " ! ' work par_ash_man multiline par_ash_man variables with = & " ! ' work par_ash_man exit value 2 should be 2 par_ash_man Unknown option: no-such-option par_ash_man exit value 255 should be 255 par_ash_funky par_ash_funky ' ' par_ash_funky ' par_ash_funky  !"#$%&'"'"'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~' par_ash_funky 3 arg alias_works par_ash_funky 3 arg alias_works_over_ssh par_ash_environment_too_big bug #50815: env_parallel should warn if the environment is too big par_ash_environment_too_big OK_bigvar par_ash_environment_too_big OK_bigvar_remote par_ash_environment_too_big OK_bigvar_quote par_ash_environment_too_big OK_bigvar_quote_remote par_ash_environment_too_big OK_bigfunc par_ash_environment_too_big OK_bigfunc_remote par_ash_environment_too_big OK_bigfunc_quote par_ash_environment_too_big OK_bigfunc_quote_remote par_ash_environment_too_big Rest should fail - functions not supported in ash par_ash_environment_too_big ash: XXX: perl: Argument list too long par_ash_environment_too_big env_parallel: Error: Your environment is too big. par_ash_environment_too_big env_parallel: Error: You can try 3 different approaches: par_ash_environment_too_big env_parallel: Error: 1. Run 'env_parallel --session' before you set par_ash_environment_too_big env_parallel: Error: variables or define functions. par_ash_environment_too_big env_parallel: Error: 2. Use --env and only mention the names to copy. par_ash_environment_too_big env_parallel: Error: 3. Try running this in a clean environment once: par_ash_environment_too_big env_parallel: Error: env_parallel --record-env par_ash_environment_too_big env_parallel: Error: And then use '--env _' par_ash_environment_too_big env_parallel: Error: For details see: man env_parallel par_ash_environment_too_big parallel: Error: Command line too long (XXX >= XXX) at input 0: fail_bigvar_remote par_ash_environment_too_big ash: XXX: perl: Argument list too long par_ash_environment_too_big env_parallel: Error: Your environment is too big. par_ash_environment_too_big env_parallel: Error: You can try 3 different approaches: par_ash_environment_too_big env_parallel: Error: 1. Run 'env_parallel --session' before you set par_ash_environment_too_big env_parallel: Error: variables or define functions. par_ash_environment_too_big env_parallel: Error: 2. Use --env and only mention the names to copy. par_ash_environment_too_big env_parallel: Error: 3. Try running this in a clean environment once: par_ash_environment_too_big env_parallel: Error: env_parallel --record-env par_ash_environment_too_big env_parallel: Error: And then use '--env _' par_ash_environment_too_big env_parallel: Error: For details see: man env_parallel par_ash_environment_too_big parallel: Error: Command line too long (XXX >= XXX) at input 0: fail_bigvar_quote_remote par_ash_environment_too_big fail_bigfunc-not-supported par_ash_environment_too_big fail_bigfunc_remote-not-supported par_ash_environment_too_big fail_bigfunc_quote-not-supported par_ash_environment_too_big fail_bigfunc_quote_remote-not-supported par_ash_env_parallel_session ### Test env_parallel --session par_ash_env_parallel_session ### level0 should be hidden, level1 should be transferred par_ash_env_parallel_session par_ash_env_parallel_session /bin/ash: XXX: level0func: not found par_ash_env_parallel_session /bin/ash: XXX: level0alias: not found par_ash_env_parallel_session /bin/ash: XXX: Bad substitution par_ash_env_parallel_session par_ash_env_parallel_session /bin/ash: XXX: level0func: not found par_ash_env_parallel_session /bin/ash: XXX: level0alias: not found par_ash_env_parallel_session /bin/ash: XXX: Bad substitution par_ash_env_parallel_session l1var par_ash_env_parallel_session l1alias par_ash_env_parallel_session /bin/ash: XXX: level1func: not found par_ash_env_parallel_session /bin/ash: XXX: Bad substitution par_ash_env_parallel_session l1var par_ash_env_parallel_session l1alias par_ash_env_parallel_session /bin/ash: XXX: level1func: not found par_ash_env_parallel_session /bin/ash: XXX: Bad substitution par_ash_env_parallel_session ### level0+1 should be hidden, level2 should be transferred par_ash_env_parallel_session par_ash_env_parallel_session /bin/ash: 3: level0func: not found par_ash_env_parallel_session /bin/ash: 3: level0alias: not found par_ash_env_parallel_session /bin/ash: 3: Bad substitution par_ash_env_parallel_session par_ash_env_parallel_session /bin/ash: 3: level0func: not found par_ash_env_parallel_session /bin/ash: 3: level0alias: not found par_ash_env_parallel_session /bin/ash: 3: Bad substitution par_ash_env_parallel_session par_ash_env_parallel_session /bin/ash: 3: level1func: not found par_ash_env_parallel_session /bin/ash: 3: level1alias: not found par_ash_env_parallel_session /bin/ash: 3: Bad substitution par_ash_env_parallel_session par_ash_env_parallel_session /bin/ash: 3: level1func: not found par_ash_env_parallel_session /bin/ash: 3: level1alias: not found par_ash_env_parallel_session /bin/ash: 3: Bad substitution par_ash_env_parallel_session l2var par_ash_env_parallel_session l2alias par_ash_env_parallel_session /bin/ash: 3: level2func: not found par_ash_env_parallel_session /bin/ash: 3: Bad substitution par_ash_env_parallel_session l2var par_ash_env_parallel_session l2alias par_ash_env_parallel_session /bin/ash: 3: level2func: not found par_ash_env_parallel_session /bin/ash: 3: Bad substitution par_ash_env_parallel_session ### level0 should be hidden, level1+2 should be transferred par_ash_env_parallel_session par_ash_env_parallel_session /bin/ash: XXX: level0func: not found par_ash_env_parallel_session /bin/ash: XXX: level0alias: not found par_ash_env_parallel_session /bin/ash: XXX: Bad substitution par_ash_env_parallel_session par_ash_env_parallel_session /bin/ash: XXX: level0func: not found par_ash_env_parallel_session /bin/ash: XXX: level0alias: not found par_ash_env_parallel_session /bin/ash: XXX: Bad substitution par_ash_env_parallel_session l1var par_ash_env_parallel_session l1alias par_ash_env_parallel_session /bin/ash: XXX: level1func: not found par_ash_env_parallel_session /bin/ash: XXX: Bad substitution par_ash_env_parallel_session l1var par_ash_env_parallel_session l1alias par_ash_env_parallel_session /bin/ash: XXX: level1func: not found par_ash_env_parallel_session /bin/ash: XXX: Bad substitution par_ash_env_parallel_session l2var par_ash_env_parallel_session l2alias par_ash_env_parallel_session /bin/ash: XXX: level2func: not found par_ash_env_parallel_session /bin/ash: XXX: Bad substitution par_ash_env_parallel_session l2var par_ash_env_parallel_session l2alias par_ash_env_parallel_session /bin/ash: XXX: level2func: not found par_ash_env_parallel_session /bin/ash: XXX: Bad substitution par_ash_env_parallel_session ### level0+1+2 should be transferred par_ash_env_parallel_session l0var par_ash_env_parallel_session l0alias par_ash_env_parallel_session /bin/ash: XXX: level0func: not found par_ash_env_parallel_session /bin/ash: XXX: Bad substitution par_ash_env_parallel_session l0var par_ash_env_parallel_session l0alias par_ash_env_parallel_session /bin/ash: XXX: level0func: not found par_ash_env_parallel_session /bin/ash: XXX: Bad substitution par_ash_env_parallel_session l1var par_ash_env_parallel_session l1alias par_ash_env_parallel_session /bin/ash: XXX: level1func: not found par_ash_env_parallel_session /bin/ash: XXX: Bad substitution par_ash_env_parallel_session l1var par_ash_env_parallel_session l1alias par_ash_env_parallel_session /bin/ash: XXX: level1func: not found par_ash_env_parallel_session /bin/ash: XXX: Bad substitution par_ash_env_parallel_session l2var par_ash_env_parallel_session l2alias par_ash_env_parallel_session /bin/ash: XXX: level2func: not found par_ash_env_parallel_session /bin/ash: XXX: Bad substitution par_ash_env_parallel_session l2var par_ash_env_parallel_session l2alias par_ash_env_parallel_session /bin/ash: XXX: level2func: not found par_ash_env_parallel_session /bin/ash: XXX: Bad substitution par_ash_env_parallel_session /bin/ash: 1: aliasbefore: not found par_ash_env_parallel_session /bin/ash: 1: aliasbefore: not found par_ash_env_parallel_session no_before par_ash_env_parallel_session no_before par_ash_env_parallel_session after aliasafter_OK par_ash_env_parallel_session after aliasafter_OK par_ash_env_parallel_session after varafter_OK par_ash_env_parallel_session after varafter_OK par_ash_env_parallel OK par_ash_env_parallel OK par_ash_env_parallel alias line 1 par_ash_env_parallel alias line 1 par_ash_env_parallel alias line 2 par_ash_env_parallel alias line 2 par_ash_env_parallel alias line 3 par_ash_env_parallel alias line 3 par_ash_env_parallel alias2 line 1 par_ash_env_parallel alias2 line 1 par_ash_env_parallel alias2 line 2 par_ash_env_parallel alias2 line 2 par_ash_env_parallel bug #50435: Remote fifo broke in 20150522 par_ash_env_parallel bug #52534: Tail of multiline alias is ignored par_ash_env_parallel data from stdin par_ash_env_parallel data from stdin