mirror of
https://git.savannah.gnu.org/git/parallel.git
synced 2024-11-25 23:47:53 +00:00
env_parallel.bash: --env _ supported.
env_parallel.ksh: --env _ supported. env_parallel.zsh: --env _ supported. testsuite/.../parallel-local-ssh7: Focuses on env_parallel.
This commit is contained in:
parent
a3947338da
commit
eacc07bcb0
|
@ -25,16 +25,16 @@
|
|||
# or write to the Free Software Foundation, Inc., 51 Franklin St,
|
||||
# Fifth Floor, Boston, MA 02110-1301 USA
|
||||
|
||||
# Supports env of 127426 bytes
|
||||
|
||||
env_parallel() {
|
||||
# env_parallel.bash
|
||||
|
||||
# Get the --env variables if set
|
||||
# --env _ should be ignored
|
||||
# and convert a b c to (a|b|c)
|
||||
# If --env not set: Match everything (.*)
|
||||
local grep_REGEXP="$(
|
||||
local _grep_REGEXP="$(
|
||||
perl -e 'for(@ARGV){
|
||||
/^_$/ and $next_is_env = 0;
|
||||
$next_is_env and push @envvar, split/,/, $_;
|
||||
$next_is_env = /^--env$/;
|
||||
}
|
||||
|
@ -42,28 +42,40 @@ env_parallel() {
|
|||
print $vars ? "($vars)" : "(.*)";
|
||||
' -- "$@"
|
||||
)"
|
||||
# Deal with --env _
|
||||
local _ignore_UNDERSCORE="$(
|
||||
perl -e 'for(@ARGV){
|
||||
$next_is_env and push @envvar, split/,/, $_;
|
||||
$next_is_env=/^--env$/;
|
||||
}
|
||||
$underscore = grep { /^_$/ } @envvar;
|
||||
print $underscore ? "grep -vf $ENV{HOME}/.parallel/ignored_vars" : "cat";
|
||||
' -- "$@"
|
||||
)"
|
||||
|
||||
# Grep alias names
|
||||
local _alias_NAMES="$(compgen -a |
|
||||
egrep "^${grep_REGEXP}\$")"
|
||||
egrep "^${_grep_REGEXP}\$" | $_ignore_UNDERSCORE)"
|
||||
local _list_alias_BODIES="alias $_alias_NAMES"
|
||||
if [[ "$_alias_NAMES" = "" ]] ; then
|
||||
# no aliases selected
|
||||
_list_alias_BODIES="true"
|
||||
fi
|
||||
unset _alias_NAMES
|
||||
|
||||
# Grep function names
|
||||
local _function_NAMES="$(compgen -A function |
|
||||
egrep "^${grep_REGEXP}\$")"
|
||||
egrep "^${_grep_REGEXP}\$" | $_ignore_UNDERSCORE)"
|
||||
local _list_function_BODIES="typeset -f $_function_NAMES"
|
||||
if [[ "$_function_NAMES" = "" ]] ; then
|
||||
# no functions selected
|
||||
_list_function_BODIES="true"
|
||||
fi
|
||||
unset _function_NAMES
|
||||
|
||||
# Grep variable names
|
||||
local _variable_NAMES="$(compgen -A variable |
|
||||
egrep "^${grep_REGEXP}\$" |
|
||||
egrep "^${_grep_REGEXP}\$" | $_ignore_UNDERSCORE |
|
||||
grep -vFf <(readonly) |
|
||||
egrep -v '^(BASHOPTS|BASHPID|EUID|GROUPS|FUNCNAME|DIRSTACK|_|PIPESTATUS|PPID|SHELLOPTS|UID|USERNAME|BASH_[A-Z_]+)$')"
|
||||
local _list_variable_VALUES="typeset -p $_variable_NAMES"
|
||||
|
@ -71,6 +83,7 @@ env_parallel() {
|
|||
# no variables selected
|
||||
_list_variable_VALUES="true"
|
||||
fi
|
||||
unset _variable_NAMES
|
||||
|
||||
# Copy shopt (so e.g. extended globbing works)
|
||||
# But force expand_aliases as aliases otherwise do not work
|
||||
|
@ -82,6 +95,9 @@ env_parallel() {
|
|||
$_list_alias_BODIES;
|
||||
$_list_variable_VALUES;
|
||||
$_list_function_BODIES)";
|
||||
unset _list_alias_BODIES
|
||||
unset _list_variable_VALUES
|
||||
unset _list_function_BODIES
|
||||
`which parallel` "$@";
|
||||
unset PARALLEL_ENV;
|
||||
}
|
||||
|
|
|
@ -25,14 +25,18 @@
|
|||
# or write to the Free Software Foundation, Inc., 51 Franklin St,
|
||||
# Fifth Floor, Boston, MA 02110-1301 USA
|
||||
|
||||
# Supports env of 127426 bytes
|
||||
|
||||
env_parallel() {
|
||||
# env_parallel.ksh
|
||||
|
||||
# Get the --env variables if set
|
||||
# --env _ should be ignored
|
||||
# and convert a b c to (a|b|c)
|
||||
# If --env not set: Match everything (.*)
|
||||
grep_REGEXP="$(
|
||||
_grep_REGEXP="$(
|
||||
perl -e 'for(@ARGV){
|
||||
/^_$/ and $next_is_env = 0;
|
||||
$next_is_env and push @envvar, split/,/, $_;
|
||||
$next_is_env=/^--env$/;
|
||||
}
|
||||
|
@ -40,10 +44,20 @@ env_parallel() {
|
|||
print $vars ? "($vars)" : "(.*)";
|
||||
' -- "$@"
|
||||
)"
|
||||
# Deal with --env _
|
||||
_ignore_UNDERSCORE="$(
|
||||
perl -e 'for(@ARGV){
|
||||
$next_is_env and push @envvar, split/,/, $_;
|
||||
$next_is_env=/^--env$/;
|
||||
}
|
||||
$underscore = grep { /^_$/ } @envvar;
|
||||
print $underscore ? "grep -vf $ENV{HOME}/.parallel/ignored_vars" : "cat";
|
||||
' -- "$@"
|
||||
)"
|
||||
|
||||
# Grep alias names
|
||||
_alias_NAMES="$(alias | perl -pe 's/=.*//' |
|
||||
egrep "^${grep_REGEXP}\$")"
|
||||
egrep "^${_grep_REGEXP}\$" | $_ignore_UNDERSCORE)"
|
||||
_list_alias_BODIES="alias $_alias_NAMES | perl -pe 's/^/alias /'"
|
||||
if [[ "$_alias_NAMES" = "" ]] ; then
|
||||
# no aliases selected
|
||||
|
@ -53,7 +67,7 @@ env_parallel() {
|
|||
|
||||
# Grep function names
|
||||
_function_NAMES="$(typeset +p -f | perl -pe 's/\(\).*//' |
|
||||
egrep "^${grep_REGEXP}\$")"
|
||||
egrep "^${_grep_REGEXP}\$" | $_ignore_UNDERSCORE)"
|
||||
_list_function_BODIES="typeset -f $_function_NAMES"
|
||||
if [[ "$_function_NAMES" = "" ]] ; then
|
||||
# no functions selected
|
||||
|
@ -63,7 +77,7 @@ env_parallel() {
|
|||
|
||||
# Grep variable names
|
||||
_variable_NAMES="$(typeset +p | perl -pe 's/^typeset .. //' |
|
||||
egrep "^${grep_REGEXP}\$" |
|
||||
egrep "^${_grep_REGEXP}\$" | $_ignore_UNDERSCORE |
|
||||
egrep -v '^(PIPESTATUS)$')"
|
||||
_list_variable_VALUES="typeset -p $_variable_NAMES"
|
||||
if [[ "$_variable_NAMES" = "" ]] ; then
|
||||
|
|
|
@ -29,10 +29,12 @@ env_parallel() {
|
|||
# env_parallel.zsh
|
||||
|
||||
# Get the --env variables if set
|
||||
# --env _ should be ignored
|
||||
# and convert a b c to (a|b|c)
|
||||
# If --env not set: Match everything (.*)
|
||||
grep_REGEXP="$(
|
||||
_grep_REGEXP="$(
|
||||
perl -e 'for(@ARGV){
|
||||
/^_$/ and $next_is_env = 0;
|
||||
$next_is_env and push @envvar, split/,/, $_;
|
||||
$next_is_env = /^--env$/;
|
||||
}
|
||||
|
@ -40,19 +42,30 @@ env_parallel() {
|
|||
print $vars ? "($vars)" : "(.*)";
|
||||
' -- "$@"
|
||||
)"
|
||||
# Deal with --env _
|
||||
local _ignore_UNDERSCORE="$(
|
||||
perl -e 'for(@ARGV){
|
||||
$next_is_env and push @envvar, split/,/, $_;
|
||||
$next_is_env=/^--env$/;
|
||||
}
|
||||
$underscore = grep { /^_$/ } @envvar;
|
||||
print $underscore ? "grep -vf $ENV{HOME}/.parallel/ignored_vars" : "cat";
|
||||
' -- "$@"
|
||||
)"
|
||||
|
||||
# Grep alias names
|
||||
_alias_NAMES="$(print -l ${(k)aliases} |
|
||||
egrep "^${grep_REGEXP}\$")"
|
||||
egrep "^${_grep_REGEXP}\$" | eval $_ignore_UNDERSCORE )"
|
||||
_list_alias_BODIES="alias "$(echo $_alias_NAMES|xargs)" | perl -pe 's/^/alias /'"
|
||||
if [[ "$_alias_NAMES" = "" ]] ; then
|
||||
# no aliases selected
|
||||
_list_alias_BODIES="true"
|
||||
fi
|
||||
unset _alias_NAMES
|
||||
|
||||
# Grep function names
|
||||
_function_NAMES="$(print -l ${(k)functions} |
|
||||
egrep "^${grep_REGEXP}\$" |
|
||||
egrep "^${_grep_REGEXP}\$" | eval $_ignore_UNDERSCORE |
|
||||
grep -v '='
|
||||
)"
|
||||
_list_function_BODIES="typeset -f "$(echo $_function_NAMES|xargs)
|
||||
|
@ -60,11 +73,12 @@ env_parallel() {
|
|||
# no functions selected
|
||||
_list_function_BODIES="true"
|
||||
fi
|
||||
unset _function_NAMES
|
||||
|
||||
# Grep variable names
|
||||
# The egrep -v is crap and should be better
|
||||
_variable_NAMES="$(print -l ${(k)parameters} |
|
||||
egrep "^${grep_REGEXP}\$" |
|
||||
egrep "^${_grep_REGEXP}\$" | eval $_ignore_UNDERSCORE |
|
||||
egrep -v '^([-?#!$*@_0]|zsh_eval_context|ZSH_EVAL_CONTEXT|LINENO|IFS|commands|functions|options|aliases|EUID|EGID|UID|GID)$' |
|
||||
egrep -v 'terminfo|funcstack|galiases|keymaps|parameters|jobdirs|dirstack|functrace|funcsourcetrace|zsh_scheduled_events|dis_aliases|dis_reswords|dis_saliases|modules|reswords|saliases|widgets|userdirs|historywords|nameddirs|termcap|dis_builtins|dis_functions|jobtexts|funcfiletrace|dis_galiases|builtins|history|jobstates'
|
||||
)"
|
||||
|
@ -75,13 +89,17 @@ env_parallel() {
|
|||
# no variables selected
|
||||
_list_variable_VALUES="true"
|
||||
fi
|
||||
unset _variable_NAMES
|
||||
|
||||
export PARALLEL_ENV="$(
|
||||
eval $_list_alias_BODIES;
|
||||
eval $_list_function_BODIES;
|
||||
eval $_list_variable_VALUES;
|
||||
|
||||
)";
|
||||
|
||||
unset _list_alias_BODIES
|
||||
unset _list_variable_VALUES
|
||||
unset _list_function_BODIES
|
||||
`which parallel` "$@";
|
||||
unset PARALLEL_ENV;
|
||||
}
|
||||
|
|
|
@ -1,117 +1,10 @@
|
|||
#!/bin/bash
|
||||
|
||||
# TODO ksh fish
|
||||
|
||||
unset run_test
|
||||
|
||||
# SSH only allowed to localhost/lo
|
||||
# --retries if ssh dies
|
||||
cat <<'EOF' | sed -e s/\$SERVER1/$SERVER1/\;s/\$SERVER2/$SERVER2/ | parallel -vj4 --retries 2 -k --joblog /tmp/jl-`basename $0` -L1
|
||||
echo '### --env from man env_parallel'
|
||||
echo '### bash'
|
||||
ssh bash@lo '
|
||||
alias myecho="echo aliases";
|
||||
env_parallel myecho ::: work;
|
||||
env_parallel -S server myecho ::: work;
|
||||
env_parallel --env myecho myecho ::: work;
|
||||
env_parallel --env myecho -S server myecho ::: work
|
||||
'
|
||||
|
||||
ssh bash@lo '
|
||||
myfunc() { echo functions $*; };
|
||||
env_parallel myfunc ::: work;
|
||||
env_parallel -S server myfunc ::: work;
|
||||
env_parallel --env myfunc myfunc ::: work;
|
||||
env_parallel --env myfunc -S server myfunc ::: work
|
||||
'
|
||||
|
||||
ssh bash@lo '
|
||||
myvar=variables;
|
||||
env_parallel echo "\$myvar" ::: work;
|
||||
env_parallel -S server echo "\$myvar" ::: work;
|
||||
env_parallel --env myvar echo "\$myvar" ::: work;
|
||||
env_parallel --env myvar -S server echo "\$myvar" ::: work
|
||||
'
|
||||
|
||||
ssh bash@lo '
|
||||
myarray=(arrays work, too);
|
||||
env_parallel -k echo "\${myarray[{}]}" ::: 0 1 2;
|
||||
env_parallel -k -S server echo "\${myarray[{}]}" ::: 0 1 2;
|
||||
env_parallel -k --env myarray echo "\${myarray[{}]}" ::: 0 1 2;
|
||||
env_parallel -k --env myarray -S server echo "\${myarray[{}]}" ::: 0 1 2
|
||||
'
|
||||
|
||||
echo '### zsh'
|
||||
|
||||
ssh zsh@lo '
|
||||
alias myecho="echo aliases";
|
||||
env_parallel myecho ::: work;
|
||||
env_parallel -S server myecho ::: work;
|
||||
env_parallel --env myecho myecho ::: work;
|
||||
env_parallel --env myecho -S server myecho ::: work
|
||||
'
|
||||
|
||||
ssh zsh@lo '
|
||||
myfunc() { echo functions $*; };
|
||||
env_parallel myfunc ::: work;
|
||||
env_parallel -S server myfunc ::: work;
|
||||
env_parallel --env myfunc myfunc ::: work;
|
||||
env_parallel --env myfunc -S server myfunc ::: work
|
||||
'
|
||||
|
||||
ssh zsh@lo '
|
||||
myvar=variables;
|
||||
env_parallel echo "\$myvar" ::: work;
|
||||
env_parallel -S server echo "\$myvar" ::: work;
|
||||
env_parallel --env myvar echo "\$myvar" ::: work;
|
||||
env_parallel --env myvar -S server echo "\$myvar" ::: work
|
||||
'
|
||||
|
||||
ssh zsh@lo '
|
||||
myarray=(arrays work, too);
|
||||
env_parallel -k echo "\${myarray[{}]}" ::: 1 2 3;
|
||||
env_parallel -k -S server echo "\${myarray[{}]}" ::: 1 2 3;
|
||||
env_parallel -k --env myarray echo "\${myarray[{}]}" ::: 1 2 3;
|
||||
env_parallel -k --env myarray -S server echo "\${myarray[{}]}" ::: 1 2 3
|
||||
'
|
||||
|
||||
echo '### ksh'
|
||||
ssh ksh@lo '
|
||||
. `which env_parallel.ksh`;
|
||||
alias myecho="echo aliases";
|
||||
env_parallel myecho ::: work;
|
||||
env_parallel -S server myecho ::: work;
|
||||
env_parallel --env myecho myecho ::: work;
|
||||
env_parallel --env myecho -S server myecho ::: work
|
||||
'
|
||||
|
||||
ssh ksh@lo '
|
||||
. `which env_parallel.ksh`;
|
||||
myfunc() { echo functions $*; };
|
||||
env_parallel myfunc ::: work;
|
||||
env_parallel -S server myfunc ::: work;
|
||||
env_parallel --env myfunc myfunc ::: work;
|
||||
env_parallel --env myfunc -S server myfunc ::: work
|
||||
'
|
||||
|
||||
ssh ksh@lo '
|
||||
. `which env_parallel.ksh`;
|
||||
myvar=variables;
|
||||
env_parallel echo "\$myvar" ::: work;
|
||||
env_parallel -S server echo "\$myvar" ::: work;
|
||||
env_parallel --env myvar echo "\$myvar" ::: work;
|
||||
env_parallel --env myvar -S server echo "\$myvar" ::: work
|
||||
'
|
||||
|
||||
ssh ksh@lo '
|
||||
. `which env_parallel.ksh`;
|
||||
myarray=(arrays work, too);
|
||||
env_parallel -k echo "\${myarray[{}]}" ::: 0 1 2;
|
||||
env_parallel -k -S server echo "\${myarray[{}]}" ::: 0 1 2;
|
||||
env_parallel -k --env myarray echo "\${myarray[{}]}" ::: 0 1 2;
|
||||
env_parallel -k --env myarray -S server echo "\${myarray[{}]}" ::: 0 1 2
|
||||
'
|
||||
|
||||
echo '### --env _'
|
||||
fUbAr="OK FUBAR" parallel -S parallel@lo --env _ echo '$fUbAr $DEBEMAIL' ::: test
|
||||
fUbAr="OK FUBAR" parallel -S csh@lo --env _ echo '$fUbAr $DEBEMAIL' ::: test
|
||||
|
@ -124,13 +17,6 @@ echo 'bug #40137: SHELL not bash: Warning when exporting funcs'
|
|||
. <(printf 'myfunc() {\necho $1\n}'); export -f myfunc; parallel --env myfunc -S lo myfunc ::: no_warning
|
||||
. <(printf 'myfunc() {\necho $1\n}'); export -f myfunc; SHELL=/bin/sh parallel --env myfunc -S lo myfunc ::: warning
|
||||
|
||||
echo 'env_parallel from man page - transfer non-exported var'
|
||||
source $(which env_parallel.bash);
|
||||
var=nonexported env_parallel -S parallel@lo echo '$var' ::: variable
|
||||
|
||||
echo 'compared to parallel - no transfer non-exported var'
|
||||
var=nonexported parallel -S parallel@lo echo '$var' ::: variable
|
||||
|
||||
echo '### zsh'
|
||||
|
||||
echo 'env in zsh'
|
||||
|
@ -226,161 +112,3 @@ echo '### bug #45575: -m and multiple hosts repeats first args'
|
|||
seq 1 3 | parallel -X -S 2/lo,2/: -k echo
|
||||
|
||||
EOF
|
||||
|
||||
echo
|
||||
echo Test env_parallel:
|
||||
echo + for each shell
|
||||
echo + remote, locally
|
||||
echo + variables, variables with funky content, arrays, assoc array, functions, aliases
|
||||
echo
|
||||
echo "### Bash environment"
|
||||
#stdout ssh -t lo <<'EOS'
|
||||
myvar="myvar works"
|
||||
funky=$(perl -e 'print pack "c*", 1..255')
|
||||
myarray=('' array_val2 3 '' 5 ' space 6 ')
|
||||
declare -A assocarr
|
||||
assocarr[a]=assoc_val_a
|
||||
assocarr[b]=assoc_val_b
|
||||
alias alias_echo="echo 3 arg";
|
||||
func_echo() {
|
||||
echo $*;
|
||||
echo "$myvar"
|
||||
echo "${myarray[5]}"
|
||||
echo ${assocarr[a]}
|
||||
echo Funky-"$funky"-funky
|
||||
}
|
||||
. `which env_parallel.bash`
|
||||
env_parallel alias_echo ::: alias_works
|
||||
env_parallel func_echo ::: function_works
|
||||
env_parallel -S lo alias_echo ::: alias_works_over_ssh
|
||||
env_parallel -S lo func_echo ::: function_works_over_ssh
|
||||
echo
|
||||
echo "$funky" | parallel --shellquote
|
||||
#EOS
|
||||
|
||||
|
||||
echo
|
||||
echo "### Zsh environment"
|
||||
stdout ssh -q zsh@lo <<'EOS' | egrep -v 'Welcome to |packages can be updated|security updates'
|
||||
myvar="myvar works"
|
||||
funky=$(perl -e 'print pack "c*", 1..255')
|
||||
myarray=('' array_val2 3 '' 5 ' space 6 ')
|
||||
declare -A assocarr
|
||||
assocarr[a]=assoc_val_a
|
||||
assocarr[b]=assoc_val_b
|
||||
alias alias_echo="echo 3 arg";
|
||||
func_echo() {
|
||||
echo $*;
|
||||
echo "$myvar"
|
||||
echo "$myarray[6]"
|
||||
echo ${assocarr[a]}
|
||||
echo Funky-"$funky"-funky
|
||||
}
|
||||
|
||||
env_parallel alias_echo ::: alias_works
|
||||
env_parallel func_echo ::: function_works
|
||||
env_parallel -S zsh@lo alias_echo ::: alias_works_over_ssh
|
||||
env_parallel -S zsh@lo func_echo ::: function_works_over_ssh
|
||||
echo
|
||||
echo "$funky" | parallel --shellquote
|
||||
EOS
|
||||
|
||||
echo
|
||||
echo "### Ksh environment"
|
||||
stdout ssh -q ksh@lo <<'EOS' | egrep -v 'Welcome to |packages can be updated|security updates'
|
||||
myvar="myvar works"
|
||||
funky=$(perl -e 'print pack "c*", 1..255')
|
||||
myarray=('' array_val2 3 '' 5 ' space 6 ')
|
||||
typeset -A assocarr
|
||||
assocarr[a]=assoc_val_a
|
||||
assocarr[b]=assoc_val_b
|
||||
alias alias_echo="echo 3 arg";
|
||||
|
||||
func_echo() {
|
||||
echo $*;
|
||||
echo "$myvar"
|
||||
echo "${myarray[5]}"
|
||||
echo ${assocarr[a]}
|
||||
echo Funky-"$funky"-funky
|
||||
}
|
||||
|
||||
env_parallel alias_echo ::: alias_works
|
||||
env_parallel func_echo ::: function_works
|
||||
env_parallel -S ksh@lo alias_echo ::: alias_works_over_ssh
|
||||
env_parallel -S ksh@lo func_echo ::: function_works_over_ssh
|
||||
echo
|
||||
echo "$funky" | parallel --shellquote
|
||||
EOS
|
||||
|
||||
echo
|
||||
echo "### Fish environment"
|
||||
stdout ssh -q fish@lo <<'EOS' | egrep -v 'Welcome to |packages can be updated|security updates'
|
||||
set myvar "myvar works"
|
||||
setenv myenvvar "myenvvar works"
|
||||
|
||||
set funky (perl -e 'print pack "c*", 1..255')
|
||||
setenv funkyenv (perl -e 'print pack "c*", 1..255')
|
||||
|
||||
set myarray '' array_val2 3 '' 5 ' space 6 '
|
||||
|
||||
# Assoc arrays do not exist
|
||||
#typeset -A assocarr
|
||||
#assocarr[a]=assoc_val_a
|
||||
#assocarr[b]=assoc_val_b
|
||||
alias alias_echo="echo 3 arg";
|
||||
|
||||
function func_echo
|
||||
echo $argv;
|
||||
echo "$myvar"
|
||||
echo "$myenvvar"
|
||||
echo "$myarray[6]"
|
||||
# Assoc arrays do not exist in fish
|
||||
# echo ${assocarr[a]}
|
||||
echo
|
||||
echo
|
||||
echo
|
||||
echo Funky-"$funky"-funky
|
||||
echo Funkyenv-"$funkyenv"-funkyenv
|
||||
echo
|
||||
echo
|
||||
echo
|
||||
end
|
||||
|
||||
env_parallel alias_echo ::: alias_works
|
||||
env_parallel func_echo ::: function_works
|
||||
env_parallel -S fish@lo alias_echo ::: alias_works_over_ssh
|
||||
env_parallel -S fish@lo func_echo ::: function_works_over_ssh
|
||||
echo
|
||||
echo "$funky" | parallel --shellquote
|
||||
EOS
|
||||
|
||||
echo
|
||||
echo "### csh environment"
|
||||
stdout ssh -q csh@lo <<'EOS' | egrep -v 'Welcome to |packages can be updated|security updates'
|
||||
set myvar = "myvar works"
|
||||
set funky = "`perl -e 'print pack q(c*), 2..255'`"
|
||||
set myarray = ('' 'array_val2' '3' '' '5' ' space 6 ')
|
||||
#declare -A assocarr
|
||||
#assocarr[a]=assoc_val_a
|
||||
#assocarr[b]=assoc_val_b
|
||||
alias alias_echo echo 3 arg;
|
||||
alias alias_echo_var 'echo $argv; echo "$myvar"; echo "${myarray[4]} special chars problem"; echo Funky-"$funky"-funky'
|
||||
|
||||
#function func_echo
|
||||
# echo $argv;
|
||||
# echo $myvar;
|
||||
# echo ${myarray[2]}
|
||||
# #echo ${assocarr[a]}
|
||||
# echo Funky-"$funky"-funky
|
||||
#end
|
||||
|
||||
env_parallel alias_echo ::: alias_works
|
||||
env_parallel alias_echo_var ::: alias_var_works
|
||||
env_parallel func_echo ::: function_does_not_work
|
||||
env_parallel -S csh@lo alias_echo ::: alias_works_over_ssh
|
||||
env_parallel -S csh@lo alias_echo_var ::: alias_var_works_over_ssh
|
||||
env_parallel -S csh@lo func_echo ::: function_does_not_work_over_ssh
|
||||
echo
|
||||
echo "$funky" | parallel --shellquote
|
||||
EOS
|
||||
|
||||
|
|
402
testsuite/tests-to-run/parallel-local-ssh7.sh
Executable file
402
testsuite/tests-to-run/parallel-local-ssh7.sh
Executable file
|
@ -0,0 +1,402 @@
|
|||
#!/bin/bash
|
||||
|
||||
echo '### test --env _'
|
||||
echo 'Both test that variables are copied,'
|
||||
echo 'but also that they are NOT copied, if ignored'
|
||||
|
||||
par_bash_man() {
|
||||
echo '### bash'
|
||||
|
||||
myscript=$(cat <<'_EOF'
|
||||
echo "### From man env_parallel"
|
||||
|
||||
alias myecho="echo aliases";
|
||||
env_parallel myecho ::: work;
|
||||
env_parallel -S server myecho ::: work;
|
||||
env_parallel --env myecho myecho ::: work;
|
||||
env_parallel --env myecho -S server myecho ::: work
|
||||
|
||||
myfunc() { echo functions $*; };
|
||||
env_parallel myfunc ::: work;
|
||||
env_parallel -S server myfunc ::: work;
|
||||
env_parallel --env myfunc myfunc ::: work;
|
||||
env_parallel --env myfunc -S server myfunc ::: work
|
||||
|
||||
myvar=variables;
|
||||
env_parallel echo "\$myvar" ::: work;
|
||||
env_parallel -S server echo "\$myvar" ::: work;
|
||||
env_parallel --env myvar echo "\$myvar" ::: work;
|
||||
env_parallel --env myvar -S server echo "\$myvar" ::: work
|
||||
|
||||
myarray=(arrays work, too);
|
||||
env_parallel -k echo "\${myarray[{}]}" ::: 0 1 2;
|
||||
env_parallel -k -S server echo "\${myarray[{}]}" ::: 0 1 2;
|
||||
env_parallel -k --env myarray echo "\${myarray[{}]}" ::: 0 1 2;
|
||||
env_parallel -k --env myarray -S server echo "\${myarray[{}]}" ::: 0 1 2
|
||||
_EOF
|
||||
)
|
||||
ssh bash@lo "$myscript"
|
||||
}
|
||||
|
||||
par_zsh_man() {
|
||||
echo '### zsh'
|
||||
myscript=$(cat <<'_EOF'
|
||||
echo "### From man env_parallel"
|
||||
|
||||
alias myecho="echo aliases";
|
||||
env_parallel myecho ::: work;
|
||||
env_parallel -S server myecho ::: work;
|
||||
env_parallel --env myecho myecho ::: work;
|
||||
env_parallel --env myecho -S server myecho ::: work
|
||||
|
||||
myfunc() { echo functions $*; };
|
||||
env_parallel myfunc ::: work;
|
||||
env_parallel -S server myfunc ::: work;
|
||||
env_parallel --env myfunc myfunc ::: work;
|
||||
env_parallel --env myfunc -S server myfunc ::: work
|
||||
|
||||
myvar=variables;
|
||||
env_parallel echo "\$myvar" ::: work;
|
||||
env_parallel -S server echo "\$myvar" ::: work;
|
||||
env_parallel --env myvar echo "\$myvar" ::: work;
|
||||
env_parallel --env myvar -S server echo "\$myvar" ::: work
|
||||
|
||||
myarray=(arrays work, too);
|
||||
env_parallel -k echo "\${myarray[{}]}" ::: 1 2 3;
|
||||
env_parallel -k -S server echo "\${myarray[{}]}" ::: 1 2 3;
|
||||
env_parallel -k --env myarray echo "\${myarray[{}]}" ::: 1 2 3;
|
||||
env_parallel -k --env myarray -S server echo "\${myarray[{}]}" ::: 1 2 3
|
||||
_EOF
|
||||
)
|
||||
ssh zsh@lo "$myscript"
|
||||
}
|
||||
|
||||
par_ksh_man() {
|
||||
echo '### ksh'
|
||||
myscript=$(cat <<'_EOF'
|
||||
echo "### From man env_parallel"
|
||||
|
||||
. `which env_parallel.ksh`;
|
||||
alias myecho="echo aliases";
|
||||
env_parallel myecho ::: work;
|
||||
env_parallel -S server myecho ::: work;
|
||||
env_parallel --env myecho myecho ::: work;
|
||||
env_parallel --env myecho -S server myecho ::: work
|
||||
|
||||
. `which env_parallel.ksh`;
|
||||
myfunc() { echo functions $*; };
|
||||
env_parallel myfunc ::: work;
|
||||
env_parallel -S server myfunc ::: work;
|
||||
env_parallel --env myfunc myfunc ::: work;
|
||||
env_parallel --env myfunc -S server myfunc ::: work
|
||||
|
||||
. `which env_parallel.ksh`;
|
||||
myvar=variables;
|
||||
env_parallel echo "\$myvar" ::: work;
|
||||
env_parallel -S server echo "\$myvar" ::: work;
|
||||
env_parallel --env myvar echo "\$myvar" ::: work;
|
||||
env_parallel --env myvar -S server echo "\$myvar" ::: work
|
||||
|
||||
. `which env_parallel.ksh`;
|
||||
myarray=(arrays work, too);
|
||||
env_parallel -k echo "\${myarray[{}]}" ::: 0 1 2;
|
||||
env_parallel -k -S server echo "\${myarray[{}]}" ::: 0 1 2;
|
||||
env_parallel -k --env myarray echo "\${myarray[{}]}" ::: 0 1 2;
|
||||
env_parallel -k --env myarray -S server echo "\${myarray[{}]}" ::: 0 1 2
|
||||
_EOF
|
||||
)
|
||||
ssh ksh@lo "$myscript"
|
||||
}
|
||||
|
||||
par_bash_underscore() {
|
||||
echo '### bash'
|
||||
myscript=$(cat <<'_EOF'
|
||||
echo "### Testing of --env _"
|
||||
|
||||
env_parallel --record-env;
|
||||
alias myecho="echo \$myvar aliases in";
|
||||
myfunc() { myecho ${myarray[@]} functions $*; };
|
||||
myvar="variables in";
|
||||
myarray=(and arrays in);
|
||||
env_parallel myfunc ::: work;
|
||||
env_parallel -S server myfunc ::: work;
|
||||
env_parallel --env myfunc,myvar,myarray,myecho myfunc ::: work;
|
||||
env_parallel --env myfunc,myvar,myarray,myecho -S server myfunc ::: work;
|
||||
env_parallel --env _ myfunc ::: work;
|
||||
env_parallel --env _ -S server myfunc ::: work;
|
||||
|
||||
echo myvar >> ~/.parallel/ignored_vars;
|
||||
env_parallel --env _ myfunc ::: work;
|
||||
env_parallel --env _ -S server myfunc ::: work;
|
||||
echo myarray >> ~/.parallel/ignored_vars;
|
||||
env_parallel --env _ myfunc ::: work;
|
||||
env_parallel --env _ -S server myfunc ::: work;
|
||||
echo myecho >> ~/.parallel/ignored_vars;
|
||||
env_parallel --env _ myfunc ::: work;
|
||||
echo "OK if no myecho ^^^^^^^^^^^^^^^^^^^^^^^^^" >&2;
|
||||
env_parallel --env _ -S server myfunc ::: work;
|
||||
echo "OK if no myecho ^^^^^^^^^^^^^^^^^^^^^^^^^" >&2;
|
||||
echo myfunc >> ~/.parallel/ignored_vars;
|
||||
env_parallel --env _ myfunc ::: work;
|
||||
echo "OK if no myfunc ^^^^^^^^^^^^^^^^^^^^^^^^^" >&2;
|
||||
env_parallel --env _ -S server myfunc ::: work;
|
||||
echo "OK if no myfunc ^^^^^^^^^^^^^^^^^^^^^^^^^" >&2;
|
||||
_EOF
|
||||
)
|
||||
ssh bash@lo "$myscript"
|
||||
}
|
||||
|
||||
par_zsh_underscore() {
|
||||
echo '### zsh'
|
||||
myscript=$(cat <<'_EOF'
|
||||
echo "### Testing of --env _"
|
||||
|
||||
. `which env_parallel.zsh`;
|
||||
env_parallel --record-env;
|
||||
alias myecho="echo \$myvar aliases in";
|
||||
eval `cat <<"_EOS";
|
||||
myfunc() { myecho ${myarray[@]} functions $*; };
|
||||
myvar="variables in";
|
||||
myarray=(and arrays in);
|
||||
env_parallel myfunc ::: work;
|
||||
env_parallel -S server myfunc ::: work;
|
||||
env_parallel --env myfunc,myvar,myarray,myecho myfunc ::: work;
|
||||
env_parallel --env myfunc,myvar,myarray,myecho -S server myfunc ::: work;
|
||||
env_parallel --env _ myfunc ::: work;
|
||||
env_parallel --env _ -S server myfunc ::: work;
|
||||
|
||||
echo myvar >> ~/.parallel/ignored_vars;
|
||||
env_parallel --env _ myfunc ::: work;
|
||||
env_parallel --env _ -S server myfunc ::: work;
|
||||
echo myarray >> ~/.parallel/ignored_vars;
|
||||
env_parallel --env _ myfunc ::: work;
|
||||
env_parallel --env _ -S server myfunc ::: work;
|
||||
echo myecho >> ~/.parallel/ignored_vars;
|
||||
: Not using the function, because aliases are expanded in functions;
|
||||
env_parallel --env _ myecho ::: work;
|
||||
echo OK if no .^^^^^^^^^^^^^^^^^^^^^^^^^ myecho >&2;
|
||||
env_parallel --env _ -S server myecho ::: work;
|
||||
echo OK if no .^^^^^^^^^^^^^^^^^^^^^^^^^ myecho >&2;
|
||||
echo myfunc >> ~/.parallel/ignored_vars;
|
||||
env_parallel --env _ myfunc ::: work;
|
||||
echo OK if no .^^^^^^^^^^^^^^^^^^^^^^^^^ myfunc >&2;
|
||||
env_parallel --env _ -S server myfunc ::: work;
|
||||
echo OK if no .^^^^^^^^^^^^^^^^^^^^^^^^^ myfunc >&2;
|
||||
_EOS`
|
||||
_EOF
|
||||
)
|
||||
ssh zsh@lo "$myscript"
|
||||
}
|
||||
|
||||
par_ksh_underscore() {
|
||||
echo '### ksh'
|
||||
myscript=$(cat <<'_EOF'
|
||||
echo "### Testing of --env _"
|
||||
|
||||
. `which env_parallel.ksh`;
|
||||
env_parallel --record-env;
|
||||
alias myecho="echo \$myvar aliases in";
|
||||
myfunc() { myecho ${myarray[@]} functions $*; };
|
||||
myvar="variables in";
|
||||
myarray=(and arrays in);
|
||||
env_parallel myfunc ::: work;
|
||||
env_parallel -S server myfunc ::: work;
|
||||
env_parallel --env myfunc,myvar,myarray,myecho myfunc ::: work;
|
||||
env_parallel --env myfunc,myvar,myarray,myecho -S server myfunc ::: work;
|
||||
env_parallel --env _ myfunc ::: work;
|
||||
env_parallel --env _ -S server myfunc ::: work;
|
||||
|
||||
echo myvar >> ~/.parallel/ignored_vars;
|
||||
env_parallel --env _ myfunc ::: work;
|
||||
env_parallel --env _ -S server myfunc ::: work;
|
||||
echo myarray >> ~/.parallel/ignored_vars;
|
||||
env_parallel --env _ myfunc ::: work;
|
||||
env_parallel --env _ -S server myfunc ::: work;
|
||||
echo myecho >> ~/.parallel/ignored_vars;
|
||||
env_parallel --env _ myfunc ::: work;
|
||||
echo "OK if no myecho ^^^^^^^^^^^^^^^^^" >&2;
|
||||
env_parallel --env _ -S server myfunc ::: work;
|
||||
echo "OK if no myecho ^^^^^^^^^^^^^^^^^" >&2;
|
||||
echo myfunc >> ~/.parallel/ignored_vars;
|
||||
env_parallel --env _ myfunc ::: work;
|
||||
echo "OK if no myfunc ^^^^^^^^^^^^^^^^^" >&2;
|
||||
env_parallel --env _ -S server myfunc ::: work;
|
||||
echo "OK if no myfunc ^^^^^^^^^^^^^^^^^" >&2;
|
||||
_EOF
|
||||
)
|
||||
ssh ksh@lo "$myscript"
|
||||
}
|
||||
|
||||
# Test env_parallel:
|
||||
# + for each shell
|
||||
# + remote, locally
|
||||
# + variables, variables with funky content, arrays, assoc array, functions, aliases
|
||||
|
||||
par_bash_funky() {
|
||||
myscript=$(cat <<'_EOF'
|
||||
myvar="myvar works"
|
||||
funky=$(perl -e "print pack \"c*\", 1..255")
|
||||
myarray=("" array_val2 3 "" 5 " space 6 ")
|
||||
declare -A assocarr
|
||||
assocarr[a]=assoc_val_a
|
||||
assocarr[b]=assoc_val_b
|
||||
alias alias_echo="echo 3 arg";
|
||||
func_echo() {
|
||||
echo $*;
|
||||
echo "$myvar"
|
||||
echo "${myarray[5]}"
|
||||
echo ${assocarr[a]}
|
||||
echo Funky-"$funky"-funky
|
||||
}
|
||||
. `which env_parallel.bash`
|
||||
env_parallel alias_echo ::: alias_works
|
||||
env_parallel func_echo ::: function_works
|
||||
env_parallel -S lo alias_echo ::: alias_works_over_ssh
|
||||
env_parallel -S lo func_echo ::: function_works_over_ssh
|
||||
echo
|
||||
echo "$funky" | parallel --shellquote
|
||||
_EOF
|
||||
)
|
||||
ssh bash@lo "$myscript"
|
||||
}
|
||||
|
||||
par_zsh_funky() {
|
||||
myscript=$(cat <<'_EOF'
|
||||
myvar="myvar works"
|
||||
funky=$(perl -e "print pack \"c*\", 1..255")
|
||||
myarray=("" array_val2 3 "" 5 " space 6 ")
|
||||
declare -A assocarr
|
||||
assocarr[a]=assoc_val_a
|
||||
assocarr[b]=assoc_val_b
|
||||
alias alias_echo="echo 3 arg";
|
||||
func_echo() {
|
||||
echo $*;
|
||||
echo "$myvar"
|
||||
echo "$myarray[6]"
|
||||
echo ${assocarr[a]}
|
||||
echo Funky-"$funky"-funky
|
||||
}
|
||||
|
||||
env_parallel alias_echo ::: alias_works
|
||||
env_parallel func_echo ::: function_works
|
||||
env_parallel -S zsh@lo alias_echo ::: alias_works_over_ssh
|
||||
env_parallel -S zsh@lo func_echo ::: function_works_over_ssh
|
||||
echo
|
||||
echo "$funky" | parallel --shellquote
|
||||
_EOF
|
||||
)
|
||||
ssh zsh@lo "$myscript"
|
||||
}
|
||||
|
||||
par_ksh_funky() {
|
||||
myscript=$(cat <<'_EOF'
|
||||
. `which env_parallel.ksh`;
|
||||
|
||||
myvar="myvar works"
|
||||
funky=$(perl -e "print pack \"c*\", 1..255")
|
||||
myarray=("" array_val2 3 "" 5 " space 6 ")
|
||||
typeset -A assocarr
|
||||
assocarr[a]=assoc_val_a
|
||||
assocarr[b]=assoc_val_b
|
||||
alias alias_echo="echo 3 arg";
|
||||
|
||||
func_echo() {
|
||||
echo $*;
|
||||
echo "$myvar"
|
||||
echo "${myarray[5]}"
|
||||
echo ${assocarr[a]}
|
||||
echo Funky-"$funky"-funky
|
||||
}
|
||||
|
||||
env_parallel alias_echo ::: alias_works
|
||||
env_parallel func_echo ::: function_works
|
||||
env_parallel -S ksh@lo alias_echo ::: alias_works_over_ssh
|
||||
env_parallel -S ksh@lo func_echo ::: function_works_over_ssh
|
||||
echo
|
||||
echo "$funky" | parallel --shellquote
|
||||
_EOF
|
||||
)
|
||||
ssh ksh@lo "$myscript"
|
||||
}
|
||||
|
||||
par_fish_funky() {
|
||||
myscript=$(cat <<'_EOF'
|
||||
set myvar "myvar works"
|
||||
setenv myenvvar "myenvvar works"
|
||||
|
||||
set funky (perl -e "print pack \"c*\", 1..255")
|
||||
setenv funkyenv (perl -e "print pack \"c*\", 1..255")
|
||||
|
||||
set myarray "" array_val2 3 "" 5 " space 6 "
|
||||
|
||||
# Assoc arrays do not exist
|
||||
#typeset -A assocarr
|
||||
#assocarr[a]=assoc_val_a
|
||||
#assocarr[b]=assoc_val_b
|
||||
alias alias_echo="echo 3 arg";
|
||||
|
||||
function func_echo
|
||||
echo $argv;
|
||||
echo "$myvar"
|
||||
echo "$myenvvar"
|
||||
echo "$myarray[6]"
|
||||
# Assoc arrays do not exist in fish
|
||||
# echo ${assocarr[a]}
|
||||
echo
|
||||
echo
|
||||
echo
|
||||
echo Funky-"$funky"-funky
|
||||
echo Funkyenv-"$funkyenv"-funkyenv
|
||||
echo
|
||||
echo
|
||||
echo
|
||||
end
|
||||
|
||||
env_parallel alias_echo ::: alias_works
|
||||
env_parallel func_echo ::: function_works
|
||||
env_parallel -S fish@lo alias_echo ::: alias_works_over_ssh
|
||||
env_parallel -S fish@lo func_echo ::: function_works_over_ssh
|
||||
echo
|
||||
echo "$funky" | parallel --shellquote
|
||||
_EOF
|
||||
)
|
||||
ssh fish@lo "$myscript"
|
||||
}
|
||||
|
||||
par_csh_funky() {
|
||||
myscript=$(cat <<'_EOF'
|
||||
set myvar = "myvar works"
|
||||
set funky = "`perl -e 'print pack q(c*), 2..255'`"
|
||||
set myarray = ('' 'array_val2' '3' '' '5' ' space 6 ')
|
||||
#declare -A assocarr
|
||||
#assocarr[a]=assoc_val_a
|
||||
#assocarr[b]=assoc_val_b
|
||||
alias alias_echo echo 3 arg;
|
||||
alias alias_echo_var 'echo $argv; echo "$myvar"; echo "${myarray[4]} special chars problem"; echo Funky-"$funky"-funky'
|
||||
|
||||
#function func_echo
|
||||
# echo $argv;
|
||||
# echo $myvar;
|
||||
# echo ${myarray[2]}
|
||||
# #echo ${assocarr[a]}
|
||||
# echo Funky-"$funky"-funky
|
||||
#end
|
||||
|
||||
env_parallel alias_echo ::: alias_works
|
||||
env_parallel alias_echo_var ::: alias_var_works
|
||||
env_parallel func_echo ::: function_does_not_work
|
||||
env_parallel -S csh@lo alias_echo ::: alias_works_over_ssh
|
||||
env_parallel -S csh@lo alias_echo_var ::: alias_var_works_over_ssh
|
||||
env_parallel -S csh@lo func_echo ::: function_does_not_work_over_ssh
|
||||
echo
|
||||
echo "$funky" | parallel --shellquote
|
||||
_EOF
|
||||
)
|
||||
ssh csh@lo "$myscript"
|
||||
}
|
||||
|
||||
|
||||
export -f $(compgen -A function | grep par_)
|
||||
# Tested with -j1..8
|
||||
# -j6 was fastest
|
||||
compgen -A function | grep par_ | sort | parallel -j6 --tag -k '{} 2>&1'
|
|
@ -1,95 +1,3 @@
|
|||
echo '### --env from man env_parallel'
|
||||
### --env from man env_parallel
|
||||
echo '### bash'
|
||||
### bash
|
||||
ssh bash@lo ' alias myecho="echo aliases"; env_parallel myecho ::: work; env_parallel -S server myecho ::: work; env_parallel --env myecho myecho ::: work; env_parallel --env myecho -S server myecho ::: work '
|
||||
aliases work
|
||||
aliases work
|
||||
aliases work
|
||||
aliases work
|
||||
ssh bash@lo ' myfunc() { echo functions $*; }; env_parallel myfunc ::: work; env_parallel -S server myfunc ::: work; env_parallel --env myfunc myfunc ::: work; env_parallel --env myfunc -S server myfunc ::: work '
|
||||
functions work
|
||||
functions work
|
||||
functions work
|
||||
functions work
|
||||
ssh bash@lo ' myvar=variables; env_parallel echo "\$myvar" ::: work; env_parallel -S server echo "\$myvar" ::: work; env_parallel --env myvar echo "\$myvar" ::: work; env_parallel --env myvar -S server echo "\$myvar" ::: work '
|
||||
variables work
|
||||
variables work
|
||||
variables work
|
||||
variables work
|
||||
ssh bash@lo ' myarray=(arrays work, too); env_parallel -k echo "\${myarray[{}]}" ::: 0 1 2; env_parallel -k -S server echo "\${myarray[{}]}" ::: 0 1 2; env_parallel -k --env myarray echo "\${myarray[{}]}" ::: 0 1 2; env_parallel -k --env myarray -S server echo "\${myarray[{}]}" ::: 0 1 2 '
|
||||
arrays
|
||||
work,
|
||||
too
|
||||
arrays
|
||||
work,
|
||||
too
|
||||
arrays
|
||||
work,
|
||||
too
|
||||
arrays
|
||||
work,
|
||||
too
|
||||
echo '### zsh'
|
||||
### zsh
|
||||
ssh zsh@lo ' alias myecho="echo aliases"; env_parallel myecho ::: work; env_parallel -S server myecho ::: work; env_parallel --env myecho myecho ::: work; env_parallel --env myecho -S server myecho ::: work '
|
||||
aliases work
|
||||
aliases work
|
||||
aliases work
|
||||
aliases work
|
||||
ssh zsh@lo ' myfunc() { echo functions $*; }; env_parallel myfunc ::: work; env_parallel -S server myfunc ::: work; env_parallel --env myfunc myfunc ::: work; env_parallel --env myfunc -S server myfunc ::: work '
|
||||
functions work
|
||||
functions work
|
||||
functions work
|
||||
functions work
|
||||
ssh zsh@lo ' myvar=variables; env_parallel echo "\$myvar" ::: work; env_parallel -S server echo "\$myvar" ::: work; env_parallel --env myvar echo "\$myvar" ::: work; env_parallel --env myvar -S server echo "\$myvar" ::: work '
|
||||
variables work
|
||||
variables work
|
||||
variables work
|
||||
variables work
|
||||
ssh zsh@lo ' myarray=(arrays work, too); env_parallel -k echo "\${myarray[{}]}" ::: 1 2 3; env_parallel -k -S server echo "\${myarray[{}]}" ::: 1 2 3; env_parallel -k --env myarray echo "\${myarray[{}]}" ::: 1 2 3; env_parallel -k --env myarray -S server echo "\${myarray[{}]}" ::: 1 2 3 '
|
||||
arrays
|
||||
work,
|
||||
too
|
||||
arrays
|
||||
work,
|
||||
too
|
||||
arrays
|
||||
work,
|
||||
too
|
||||
arrays
|
||||
work,
|
||||
too
|
||||
echo '### ksh'
|
||||
### ksh
|
||||
ssh ksh@lo ' . `which env_parallel.ksh`; alias myecho="echo aliases"; env_parallel myecho ::: work; env_parallel -S server myecho ::: work; env_parallel --env myecho myecho ::: work; env_parallel --env myecho -S server myecho ::: work '
|
||||
aliases work
|
||||
aliases work
|
||||
aliases work
|
||||
aliases work
|
||||
ssh ksh@lo ' . `which env_parallel.ksh`; myfunc() { echo functions $*; }; env_parallel myfunc ::: work; env_parallel -S server myfunc ::: work; env_parallel --env myfunc myfunc ::: work; env_parallel --env myfunc -S server myfunc ::: work '
|
||||
functions work
|
||||
functions work
|
||||
functions work
|
||||
functions work
|
||||
ssh ksh@lo ' . `which env_parallel.ksh`; myvar=variables; env_parallel echo "\$myvar" ::: work; env_parallel -S server echo "\$myvar" ::: work; env_parallel --env myvar echo "\$myvar" ::: work; env_parallel --env myvar -S server echo "\$myvar" ::: work '
|
||||
variables work
|
||||
variables work
|
||||
variables work
|
||||
variables work
|
||||
ssh ksh@lo ' . `which env_parallel.ksh`; myarray=(arrays work, too); env_parallel -k echo "\${myarray[{}]}" ::: 0 1 2; env_parallel -k -S server echo "\${myarray[{}]}" ::: 0 1 2; env_parallel -k --env myarray echo "\${myarray[{}]}" ::: 0 1 2; env_parallel -k --env myarray -S server echo "\${myarray[{}]}" ::: 0 1 2 '
|
||||
arrays
|
||||
work,
|
||||
too
|
||||
arrays
|
||||
work,
|
||||
too
|
||||
arrays
|
||||
work,
|
||||
too
|
||||
arrays
|
||||
work,
|
||||
too
|
||||
echo '### --env _'
|
||||
### --env _
|
||||
fUbAr="OK FUBAR" parallel -S parallel@lo --env _ echo '$fUbAr $DEBEMAIL' ::: test
|
||||
|
@ -107,14 +15,6 @@ bug #40137: SHELL not bash: Warning when exporting funcs
|
|||
no_warning
|
||||
. <(printf 'myfunc() {\necho $1\n}'); export -f myfunc; SHELL=/bin/sh parallel --env myfunc -S lo myfunc ::: warning
|
||||
warning
|
||||
echo 'env_parallel from man page - transfer non-exported var'
|
||||
env_parallel from man page - transfer non-exported var
|
||||
source $(which env_parallel.bash); var=nonexported env_parallel -S parallel@lo echo '$var' ::: variable
|
||||
nonexported variable
|
||||
echo 'compared to parallel - no transfer non-exported var'
|
||||
compared to parallel - no transfer non-exported var
|
||||
var=nonexported parallel -S parallel@lo echo '$var' ::: variable
|
||||
variable
|
||||
echo '### zsh'
|
||||
### zsh
|
||||
echo 'env in zsh'
|
||||
|
@ -224,135 +124,3 @@ echo '### bug #45575: -m and multiple hosts repeats first args'
|
|||
1
|
||||
2
|
||||
3
|
||||
|
||||
Test env_parallel:
|
||||
+ for each shell
|
||||
+ remote, locally
|
||||
+ variables, variables with funky content, arrays, assoc array, functions, aliases
|
||||
|
||||
### Bash environment
|
||||
3 arg alias_works
|
||||
function_works
|
||||
myvar works
|
||||
space 6
|
||||
assoc_val_a
|
||||
Funky-
|
||||
|
||||
|
||||
!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~
|
||||
€亗儎厗噲墛媽崕彁憭摂晼棙櫄洔潪煚、¥ウЖ┆<EFBFBD><EFBFBD><EFBFBD>辈炒刀犯购患骄坷谅媚牌侨墒颂臀闲岩釉罩棕仝圮蒉哙徕沅彐玷殛腱眍镳耱篝貊鼬<EFBFBD><EFBFBD><EFBFBD><EFBFBD>-funky
|
||||
3 arg alias_works_over_ssh
|
||||
function_works_over_ssh
|
||||
myvar works
|
||||
space 6
|
||||
assoc_val_a
|
||||
Funky-
|
||||
|
||||
|
||||
!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~
|
||||
€亗儎厗噲墛媽崕彁憭摂晼棙櫄洔潪煚、¥ウЖ┆<EFBFBD><EFBFBD><EFBFBD>辈炒刀犯购患骄坷谅媚牌侨墒颂臀闲岩釉罩棕仝圮蒉哙徕沅彐玷殛腱眍镳耱篝貊鼬<EFBFBD><EFBFBD><EFBFBD><EFBFBD>-funky
|
||||
|
||||
\\\\\\\\
|
||||
\\\
\\\\\\\\\\\\\\ \!\"\#\$%\&\'\(\)\*+,-./0123456789:\;\<\=\>\?@ABCDEFGHIJKLMNOPQRSTUVWXYZ\[\\\]\^_\`abcdefghijklmnopqrstuvwxyz\{\|\}\~€乗俓僜刓匼哱嘰圽塡奬媆孿峔嶾廫怽慭抃揬擻昞朶梊榎橽歕沑淺漒瀄焅燶<E78485><E787B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>╘‐猏玕琝璡甛痋癨盶瞈砛碶礬禱穃竆筡篭籠糪絓綷縗繺羂耚肻腬臷芢荺萛蒤蔦薥蘚蚛蝄蟎衆裓襖覾診誠謀譢豛賊赲踈躙輁轡運郳醆鈂鉢鋅錦鎈鏫鑌閈闬隲靄韁頫颸餦馶騖骪鬨鮘鯸鱘鳿鵟鶿鸤黒齖㘎<E9BD96>
|
||||
|
||||
### Zsh environment
|
||||
|
||||
* Documentation: http://www.linuxmint.com
|
||||
3 arg alias_works
|
||||
function_works
|
||||
myvar works
|
||||
space 6
|
||||
assoc_val_a
|
||||
Funky-
|
||||
|
||||
!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€亗儎厗噲墛媽崕彁憭摂晼棙櫄洔潪煚、¥ウЖ┆<D096><E29486><EFBFBD>辈炒刀犯购患骄坷谅媚牌侨墒颂臀闲岩釉罩棕仝圮蒉哙徕沅彐玷殛腱眍镳耱篝貊鼬<E8B28A><E9BCAC><EFBFBD><EFBFBD>-funky
|
||||
3 arg alias_works_over_ssh
|
||||
function_works_over_ssh
|
||||
myvar works
|
||||
space 6
|
||||
assoc_val_a
|
||||
Funky-
|
||||
|
||||
!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€亗儎厗噲墛媽崕彁憭摂晼棙櫄洔潪煚、¥ウЖ┆<D096><E29486><EFBFBD>辈炒刀犯购患骄坷谅媚牌侨墒颂臀闲岩釉罩棕仝圮蒉哙徕沅彐玷殛腱眍镳耱篝貊鼬<E8B28A><E9BCAC><EFBFBD><EFBFBD>-funky
|
||||
|
||||
\\\\\\\\
|
||||
\\\
\\\\\\\\\\\\\\ \!\"\#\$%\&\'\(\)\*+,-./0123456789:\;\<\=\>\?@ABCDEFGHIJKLMNOPQRSTUVWXYZ\[\\\]\^_\`abcdefghijklmnopqrstuvwxyz\{\|\}\~€乗俓僜刓匼哱嘰圽塡奬媆孿峔嶾廫怽慭抃揬擻昞朶梊榎橽歕沑淺漒瀄焅燶<E78485><E787B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>╘‐猏玕琝璡甛痋癨盶瞈砛碶礬禱穃竆筡篭籠糪絓綷縗繺羂耚肻腬臷芢荺萛蒤蔦薥蘚蚛蝄蟎衆裓襖覾診誠謀譢豛賊赲踈躙輁轡運郳醆鈂鉢鋅錦鎈鏫鑌閈闬隲靄韁頫颸餦馶騖骪鬨鮘鯸鱘鳿鵟鶿鸤黒齖㘎<E9BD96>
|
||||
|
||||
### Ksh environment
|
||||
|
||||
* Documentation: http://www.linuxmint.com
|
||||
3 arg alias_works
|
||||
function_works
|
||||
myvar works
|
||||
space 6
|
||||
assoc_val_a
|
||||
Funky-
|
||||
!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€亗儎厗噲墛媽崕彁憭摂晼棙櫄洔潪煚、¥ウЖ┆<D096><E29486><EFBFBD>辈炒刀犯购患骄坷谅媚牌侨墒颂臀闲岩釉罩棕仝圮蒉哙徕沅彐玷殛腱眍镳耱篝貊鼬<E8B28A><E9BCAC><EFBFBD><EFBFBD>-funky
|
||||
3 arg alias_works_over_ssh
|
||||
function_works_over_ssh
|
||||
myvar works
|
||||
space 6
|
||||
assoc_val_a
|
||||
Funky-
|
||||
!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€亗儎厗噲墛媽崕彁憭摂晼棙櫄洔潪煚、¥ウЖ┆<D096><E29486><EFBFBD>辈炒刀犯购患骄坷谅媚牌侨墒颂臀闲岩釉罩棕仝圮蒉哙徕沅彐玷殛腱眍镳耱篝貊鼬<E8B28A><E9BCAC><EFBFBD><EFBFBD>-funky
|
||||
|
||||
\\\\\\\\
|
||||
\\\
\\\\\\\\\\\\\\ \!\"\#\$%\&\'\(\)\*+,-./0123456789:\;\<\=\>\?@ABCDEFGHIJKLMNOPQRSTUVWXYZ\[\\\]\^_\`abcdefghijklmnopqrstuvwxyz\{\|\}\~€乗俓僜刓匼哱嘰圽塡奬媆孿峔嶾廫怽慭抃揬擻昞朶梊榎橽歕沑淺漒瀄焅燶<E78485><E787B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>╘‐猏玕琝璡甛痋癨盶瞈砛碶礬禱穃竆筡篭籠糪絓綷縗繺羂耚肻腬臷芢荺萛蒤蔦薥蘚蚛蝄蟎衆裓襖覾診誠謀譢豛賊赲踈躙輁轡運郳醆鈂鉢鋅錦鎈鏫鑌閈闬隲靄韁頫颸餦馶騖骪鬨鮘鯸鱘鳿鵟鶿鸤黒齖㘎<E9BD96>
|
||||
|
||||
### Fish environment
|
||||
|
||||
* Documentation: http://www.linuxmint.com
|
||||
env_parallel: Warning: ASCII value 1 in variables is not supported
|
||||
env_parallel: Warning: ASCII value 1 in variables is not supported
|
||||
3 arg alias_works
|
||||
env_parallel: Warning: ASCII value 1 in variables is not supported
|
||||
env_parallel: Warning: ASCII value 1 in variables is not supported
|
||||
function_works
|
||||
myvar works
|
||||
myenvvar works
|
||||
space 6
|
||||
|
||||
|
||||
|
||||
Funky-
!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€亗儎厗噲墛媽崕彁憭摂晼棙櫄洔潪煚、¥ウЖ┆<D096><E29486><EFBFBD>辈炒刀犯购患骄坷谅媚牌侨墒颂臀闲岩釉罩棕仝圮蒉哙徕沅彐玷殛腱眍镳耱篝貊鼬<E8B28A><E9BCAC><EFBFBD><EFBFBD>-funky
|
||||
Funkyenv-
!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€亗儎厗噲墛媽崕彁憭摂晼棙櫄洔潪煚、¥ウЖ┆<D096><E29486><EFBFBD>辈炒刀犯购患骄坷谅媚牌侨墒颂臀闲岩釉罩棕仝圮蒉哙徕沅彐玷殛腱眍镳耱篝貊鼬<E8B28A><E9BCAC><EFBFBD><EFBFBD>-funkyenv
|
||||
|
||||
|
||||
|
||||
env_parallel: Warning: ASCII value 1 in variables is not supported
|
||||
env_parallel: Warning: ASCII value 1 in variables is not supported
|
||||
3 arg alias_works_over_ssh
|
||||
env_parallel: Warning: ASCII value 1 in variables is not supported
|
||||
env_parallel: Warning: ASCII value 1 in variables is not supported
|
||||
function_works_over_ssh
|
||||
myvar works
|
||||
myenvvar works
|
||||
space 6
|
||||
|
||||
|
||||
|
||||
Funky-
!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€亗儎厗噲墛媽崕彁憭摂晼棙櫄洔潪煚、¥ウЖ┆<D096><E29486><EFBFBD>辈炒刀犯购患骄坷谅媚牌侨墒颂臀闲岩釉罩棕仝圮蒉哙徕沅彐玷殛腱眍镳耱篝貊鼬<E8B28A><E9BCAC><EFBFBD><EFBFBD>-funky
|
||||
Funkyenv-
!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€亗儎厗噲墛媽崕彁憭摂晼棙櫄洔潪煚、¥ウЖ┆<D096><E29486><EFBFBD>辈炒刀犯购患骄坷谅媚牌侨墒颂臀闲岩釉罩棕仝圮蒉哙徕沅彐玷殛腱眍镳耱篝貊鼬<E8B28A><E9BCAC><EFBFBD><EFBFBD>-funkyenv
|
||||
|
||||
|
||||
|
||||
|
||||
\\\\\\\\ \ \\\
\\\\\\\\\\\\\\ \ \!\"\#\$%\&\'\(\)\*+,-./0123456789:\;\<\=\>\?@ABCDEFGHIJKLMNOPQRSTUVWXYZ\[\\\]\^_\`abcdefghijklmnopqrstuvwxyz\{\|\}\~€乗俓僜刓匼哱嘰圽塡奬媆孿峔嶾廫怽慭抃揬擻昞朶梊榎橽歕沑淺漒瀄焅燶<E78485><E787B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>╘‐猏玕琝璡甛痋癨盶瞈砛碶礬禱穃竆筡篭籠糪絓綷縗繺羂耚肻腬臷芢荺萛蒤蔦薥蘚蚛蝄蟎衆裓襖覾診誠謀譢豛賊赲踈躙輁轡運郳醆鈂鉢鋅錦鎈鏫鑌閈闬隲靄韁頫颸餦馶騖骪鬨鮘鯸鱘鳿鵟鶿鸤黒齖㘎<E9BD96>
|
||||
|
||||
### csh environment
|
||||
|
||||
* Documentation: http://www.linuxmint.com
|
||||
Warning: no access to tty (Bad file descriptor).
|
||||
Thus no job control in this shell.
|
||||
3 arg alias_works
|
||||
|
||||
myvar works
|
||||
space special chars problem
|
||||
Funky-
!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€亗儎厗噲墛媽崕彁憭摂晼棙櫄洔潪煚、¥ウЖ┆<D096><E29486><EFBFBD>辈炒刀犯购患骄坷谅媚牌侨墒颂臀闲岩釉罩棕仝圮蒉哙徕沅彐玷殛腱眍镳耱篝貊鼬<E8B28A><E9BCAC><EFBFBD><EFBFBD>-funky alias_var_works
|
||||
func_echo: Command not found.
|
||||
3 arg alias_works_over_ssh
|
||||
myvar works
|
||||
space special chars problem
|
||||
Funky-
!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€亗儎厗噲墛媽崕彁憭摂晼棙櫄洔潪煚、¥ウЖ┆<D096><E29486><EFBFBD>辈炒刀犯购患骄坷谅媚牌侨墒颂臀闲岩釉罩棕仝圮蒉哙徕沅彐玷殛腱眍镳耱篝貊鼬<E8B28A><E9BCAC><EFBFBD><EFBFBD>-funky alias_var_works_over_ssh
|
||||
func_echo: Command not found.
|
||||
\\\\\\\\ \ \\\
\\\\\\\\\\\\\\ \!\"\#\$%\&\'\(\)\*+,-./0123456789:\;\<\=\>\?@ABCDEFGHIJKLMNOPQRSTUVWXYZ\[\\\]\^_\`abcdefghijklmnopqrstuvwxyz\{\|\}\~€乗俓僜刓匼哱嘰圽塡奬媆孿峔嶾廫怽慭抃揬擻昞朶梊榎橽歕沑淺漒瀄焅燶<E78485><E787B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>╘‐猏玕琝璡甛痋癨盶瞈砛碶礬禱穃竆筡篭籠糪絓綷縗繺羂耚肻腬臷芢荺萛蒤蔦薥蘚蚛蝄蟎衆裓襖覾診誠謀譢豛賊赲踈躙輁轡運郳醆鈂鉢鋅錦鎈鏫鑌閈闬隲靄韁頫颸餦馶騖骪鬨鮘鯸鱘鳿鵟鶿鸤黒齖㘎<E9BD96>
|
||||
|
|
247
testsuite/wanted-results/parallel-local-ssh7
Normal file
247
testsuite/wanted-results/parallel-local-ssh7
Normal file
|
@ -0,0 +1,247 @@
|
|||
### test --env _
|
||||
Both test that variables are copied,
|
||||
but also that they are NOT copied, if ignored
|
||||
par_bash_funky 3 arg alias_works
|
||||
par_bash_funky function_works
|
||||
par_bash_funky myvar works
|
||||
par_bash_funky space 6
|
||||
par_bash_funky assoc_val_a
|
||||
par_bash_funky Funky-
|
||||
par_bash_funky
|
||||
par_bash_funky
|
||||
par_bash_funky
!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~
|
||||
par_bash_funky €亗儎厗噲墛媽崕彁憭摂晼棙櫄洔潪煚、¥ウЖ┆<D096><E29486><EFBFBD>辈炒刀犯购患骄坷谅媚牌侨墒颂臀闲岩釉罩棕仝圮蒉哙徕沅彐玷殛腱眍镳耱篝貊鼬<E8B28A><E9BCAC><EFBFBD><EFBFBD>-funky
|
||||
par_bash_funky 3 arg alias_works_over_ssh
|
||||
par_bash_funky function_works_over_ssh
|
||||
par_bash_funky myvar works
|
||||
par_bash_funky space 6
|
||||
par_bash_funky assoc_val_a
|
||||
par_bash_funky Funky-
|
||||
par_bash_funky
|
||||
par_bash_funky
|
||||
par_bash_funky
!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~
|
||||
par_bash_funky €亗儎厗噲墛媽崕彁憭摂晼棙櫄洔潪煚、¥ウЖ┆<D096><E29486><EFBFBD>辈炒刀犯购患骄坷谅媚牌侨墒颂臀闲岩釉罩棕仝圮蒉哙徕沅彐玷殛腱眍镳耱篝貊鼬<E8B28A><E9BCAC><EFBFBD><EFBFBD>-funky
|
||||
par_bash_funky
|
||||
par_bash_funky \\\\\\\\
|
||||
par_bash_funky \\\
\\\\\\\\\\\\\\ \!\"\#\$%\&\'\(\)\*+,-./0123456789:\;\<\=\>\?@ABCDEFGHIJKLMNOPQRSTUVWXYZ\[\\\]\^_\`abcdefghijklmnopqrstuvwxyz\{\|\}\~€乗俓僜刓匼哱嘰圽塡奬媆孿峔嶾廫怽慭抃揬擻昞朶梊榎橽歕沑淺漒瀄焅燶<E78485><E787B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>╘‐猏玕琝璡甛痋癨盶瞈砛碶礬禱穃竆筡篭籠糪絓綷縗繺羂耚肻腬臷芢荺萛蒤蔦薥蘚蚛蝄蟎衆裓襖覾診誠謀譢豛賊赲踈躙輁轡運郳醆鈂鉢鋅錦鎈鏫鑌閈闬隲靄韁頫颸餦馶騖骪鬨鮘鯸鱘鳿鵟鶿鸤黒齖㘎<E9BD96>
|
||||
par_bash_man ### bash
|
||||
par_bash_man ### From man env_parallel
|
||||
par_bash_man aliases work
|
||||
par_bash_man aliases work
|
||||
par_bash_man aliases work
|
||||
par_bash_man aliases work
|
||||
par_bash_man functions work
|
||||
par_bash_man functions work
|
||||
par_bash_man functions work
|
||||
par_bash_man functions work
|
||||
par_bash_man variables work
|
||||
par_bash_man variables work
|
||||
par_bash_man variables work
|
||||
par_bash_man variables work
|
||||
par_bash_man arrays
|
||||
par_bash_man work,
|
||||
par_bash_man too
|
||||
par_bash_man arrays
|
||||
par_bash_man work,
|
||||
par_bash_man too
|
||||
par_bash_man arrays
|
||||
par_bash_man work,
|
||||
par_bash_man too
|
||||
par_bash_man arrays
|
||||
par_bash_man work,
|
||||
par_bash_man too
|
||||
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 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 64: myecho: command not found
|
||||
par_bash_underscore OK if no myecho ^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
par_bash_underscore /bin/bash: line 64: myecho: command not found
|
||||
par_bash_underscore OK if no myecho ^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
par_bash_underscore /bin/bash: line 62: myfunc: command not found
|
||||
par_bash_underscore OK if no myfunc ^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
par_bash_underscore /bin/bash: line 62: myfunc: command not found
|
||||
par_bash_underscore OK if no myfunc ^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
par_csh_funky 3 arg alias_works
|
||||
par_csh_funky myvar works
|
||||
par_csh_funky space special chars problem
|
||||
par_csh_funky Funky-
!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€亗儎厗噲墛媽崕彁憭摂晼棙櫄洔潪煚、¥ウЖ┆<D096><E29486><EFBFBD>辈炒刀犯购患骄坷谅媚牌侨墒颂臀闲岩釉罩棕仝圮蒉哙徕沅彐玷殛腱眍镳耱篝貊鼬<E8B28A><E9BCAC><EFBFBD><EFBFBD>-funky alias_var_works
|
||||
par_csh_funky func_echo: Command not found.
|
||||
par_csh_funky 3 arg alias_works_over_ssh
|
||||
par_csh_funky myvar works
|
||||
par_csh_funky space special chars problem
|
||||
par_csh_funky Funky-
!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€亗儎厗噲墛媽崕彁憭摂晼棙櫄洔潪煚、¥ウЖ┆<D096><E29486><EFBFBD>辈炒刀犯购患骄坷谅媚牌侨墒颂臀闲岩釉罩棕仝圮蒉哙徕沅彐玷殛腱眍镳耱篝貊鼬<E8B28A><E9BCAC><EFBFBD><EFBFBD>-funky alias_var_works_over_ssh
|
||||
par_csh_funky func_echo: Command not found.
|
||||
par_csh_funky \\\\\\\\ \ \\\
\\\\\\\\\\\\\\ \!\"\#\$%\&\'\(\)\*+,-./0123456789:\;\<\=\>\?@ABCDEFGHIJKLMNOPQRSTUVWXYZ\[\\\]\^_\`abcdefghijklmnopqrstuvwxyz\{\|\}\~€乗俓僜刓匼哱嘰圽塡奬媆孿峔嶾廫怽慭抃揬擻昞朶梊榎橽歕沑淺漒瀄焅燶<E78485><E787B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>╘‐猏玕琝璡甛痋癨盶瞈砛碶礬禱穃竆筡篭籠糪絓綷縗繺羂耚肻腬臷芢荺萛蒤蔦薥蘚蚛蝄蟎衆裓襖覾診誠謀譢豛賊赲踈躙輁轡運郳醆鈂鉢鋅錦鎈鏫鑌閈闬隲靄韁頫颸餦馶騖骪鬨鮘鯸鱘鳿鵟鶿鸤黒齖㘎<E9BD96>
|
||||
par_fish_funky env_parallel: Warning: ASCII value 1 in variables is not supported
|
||||
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 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-
!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€亗儎厗噲墛媽崕彁憭摂晼棙櫄洔潪煚、¥ウЖ┆<D096><E29486><EFBFBD>辈炒刀犯购患骄坷谅媚牌侨墒颂臀闲岩釉罩棕仝圮蒉哙徕沅彐玷殛腱眍镳耱篝貊鼬<E8B28A><E9BCAC><EFBFBD><EFBFBD>-funky
|
||||
par_fish_funky Funkyenv-
!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€亗儎厗噲墛媽崕彁憭摂晼棙櫄洔潪煚、¥ウЖ┆<D096><E29486><EFBFBD>辈炒刀犯购患骄坷谅媚牌侨墒颂臀闲岩釉罩棕仝圮蒉哙徕沅彐玷殛腱眍镳耱篝貊鼬<E8B28A><E9BCAC><EFBFBD><EFBFBD>-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 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 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-
!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€亗儎厗噲墛媽崕彁憭摂晼棙櫄洔潪煚、¥ウЖ┆<D096><E29486><EFBFBD>辈炒刀犯购患骄坷谅媚牌侨墒颂臀闲岩釉罩棕仝圮蒉哙徕沅彐玷殛腱眍镳耱篝貊鼬<E8B28A><E9BCAC><EFBFBD><EFBFBD>-funky
|
||||
par_fish_funky Funkyenv-
!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€亗儎厗噲墛媽崕彁憭摂晼棙櫄洔潪煚、¥ウЖ┆<D096><E29486><EFBFBD>辈炒刀犯购患骄坷谅媚牌侨墒颂臀闲岩釉罩棕仝圮蒉哙徕沅彐玷殛腱眍镳耱篝貊鼬<E8B28A><E9BCAC><EFBFBD><EFBFBD>-funkyenv
|
||||
par_fish_funky
|
||||
par_fish_funky
|
||||
par_fish_funky
|
||||
par_fish_funky
|
||||
par_fish_funky \\\\\\\\ \ \\\
\\\\\\\\\\\\\\ \ \!\"\#\$%\&\'\(\)\*+,-./0123456789:\;\<\=\>\?@ABCDEFGHIJKLMNOPQRSTUVWXYZ\[\\\]\^_\`abcdefghijklmnopqrstuvwxyz\{\|\}\~€乗俓僜刓匼哱嘰圽塡奬媆孿峔嶾廫怽慭抃揬擻昞朶梊榎橽歕沑淺漒瀄焅燶<E78485><E787B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>╘‐猏玕琝璡甛痋癨盶瞈砛碶礬禱穃竆筡篭籠糪絓綷縗繺羂耚肻腬臷芢荺萛蒤蔦薥蘚蚛蝄蟎衆裓襖覾診誠謀譢豛賊赲踈躙輁轡運郳醆鈂鉢鋅錦鎈鏫鑌閈闬隲靄韁頫颸餦馶騖骪鬨鮘鯸鱘鳿鵟鶿鸤黒齖㘎<E9BD96>
|
||||
par_ksh_funky 3 arg alias_works
|
||||
par_ksh_funky function_works
|
||||
par_ksh_funky myvar works
|
||||
par_ksh_funky space 6
|
||||
par_ksh_funky assoc_val_a
|
||||
par_ksh_funky Funky-
|
||||
par_ksh_funky
!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€亗儎厗噲墛媽崕彁憭摂晼棙櫄洔潪煚、¥ウЖ┆<D096><E29486><EFBFBD>辈炒刀犯购患骄坷谅媚牌侨墒颂臀闲岩釉罩棕仝圮蒉哙徕沅彐玷殛腱眍镳耱篝貊鼬<E8B28A><E9BCAC><EFBFBD><EFBFBD>-funky
|
||||
par_ksh_funky 3 arg alias_works_over_ssh
|
||||
par_ksh_funky function_works_over_ssh
|
||||
par_ksh_funky myvar works
|
||||
par_ksh_funky space 6
|
||||
par_ksh_funky assoc_val_a
|
||||
par_ksh_funky Funky-
|
||||
par_ksh_funky
!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€亗儎厗噲墛媽崕彁憭摂晼棙櫄洔潪煚、¥ウЖ┆<D096><E29486><EFBFBD>辈炒刀犯购患骄坷谅媚牌侨墒颂臀闲岩釉罩棕仝圮蒉哙徕沅彐玷殛腱眍镳耱篝貊鼬<E8B28A><E9BCAC><EFBFBD><EFBFBD>-funky
|
||||
par_ksh_funky
|
||||
par_ksh_funky \\\\\\\\
|
||||
par_ksh_funky \\\
\\\\\\\\\\\\\\ \!\"\#\$%\&\'\(\)\*+,-./0123456789:\;\<\=\>\?@ABCDEFGHIJKLMNOPQRSTUVWXYZ\[\\\]\^_\`abcdefghijklmnopqrstuvwxyz\{\|\}\~€乗俓僜刓匼哱嘰圽塡奬媆孿峔嶾廫怽慭抃揬擻昞朶梊榎橽歕沑淺漒瀄焅燶<E78485><E787B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>╘‐猏玕琝璡甛痋癨盶瞈砛碶礬禱穃竆筡篭籠糪絓綷縗繺羂耚肻腬臷芢荺萛蒤蔦薥蘚蚛蝄蟎衆裓襖覾診誠謀譢豛賊赲踈躙輁轡運郳醆鈂鉢鋅錦鎈鏫鑌閈闬隲靄韁頫颸餦馶騖骪鬨鮘鯸鱘鳿鵟鶿鸤黒齖㘎<E9BD96>
|
||||
par_ksh_man ### ksh
|
||||
par_ksh_man ### From man env_parallel
|
||||
par_ksh_man aliases work
|
||||
par_ksh_man aliases work
|
||||
par_ksh_man aliases work
|
||||
par_ksh_man aliases work
|
||||
par_ksh_man functions work
|
||||
par_ksh_man functions work
|
||||
par_ksh_man functions work
|
||||
par_ksh_man functions work
|
||||
par_ksh_man variables work
|
||||
par_ksh_man variables work
|
||||
par_ksh_man variables work
|
||||
par_ksh_man variables work
|
||||
par_ksh_man arrays
|
||||
par_ksh_man work,
|
||||
par_ksh_man too
|
||||
par_ksh_man arrays
|
||||
par_ksh_man work,
|
||||
par_ksh_man too
|
||||
par_ksh_man arrays
|
||||
par_ksh_man work,
|
||||
par_ksh_man too
|
||||
par_ksh_man arrays
|
||||
par_ksh_man work,
|
||||
par_ksh_man too
|
||||
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 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 /usr/bin/ksh[100]: myecho: not found [No such file or directory]
|
||||
par_ksh_underscore OK if no myecho ^^^^^^^^^^^^^^^^^
|
||||
par_ksh_underscore /usr/bin/ksh[100]: myecho: not found [No such file or directory]
|
||||
par_ksh_underscore OK if no myecho ^^^^^^^^^^^^^^^^^
|
||||
par_ksh_underscore /usr/bin/ksh: line 100: myfunc: not found
|
||||
par_ksh_underscore OK if no myfunc ^^^^^^^^^^^^^^^^^
|
||||
par_ksh_underscore /usr/bin/ksh: line 100: myfunc: not found
|
||||
par_ksh_underscore OK if no myfunc ^^^^^^^^^^^^^^^^^
|
||||
par_zsh_funky 3 arg alias_works
|
||||
par_zsh_funky function_works
|
||||
par_zsh_funky myvar works
|
||||
par_zsh_funky space 6
|
||||
par_zsh_funky assoc_val_a
|
||||
par_zsh_funky Funky-
|
||||
par_zsh_funky
|
||||
par_zsh_funky
!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€亗儎厗噲墛媽崕彁憭摂晼棙櫄洔潪煚、¥ウЖ┆<D096><E29486><EFBFBD>辈炒刀犯购患骄坷谅媚牌侨墒颂臀闲岩釉罩棕仝圮蒉哙徕沅彐玷殛腱眍镳耱篝貊鼬<E8B28A><E9BCAC><EFBFBD><EFBFBD>-funky
|
||||
par_zsh_funky 3 arg alias_works_over_ssh
|
||||
par_zsh_funky function_works_over_ssh
|
||||
par_zsh_funky myvar works
|
||||
par_zsh_funky space 6
|
||||
par_zsh_funky assoc_val_a
|
||||
par_zsh_funky Funky-
|
||||
par_zsh_funky
|
||||
par_zsh_funky
!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€亗儎厗噲墛媽崕彁憭摂晼棙櫄洔潪煚、¥ウЖ┆<D096><E29486><EFBFBD>辈炒刀犯购患骄坷谅媚牌侨墒颂臀闲岩釉罩棕仝圮蒉哙徕沅彐玷殛腱眍镳耱篝貊鼬<E8B28A><E9BCAC><EFBFBD><EFBFBD>-funky
|
||||
par_zsh_funky
|
||||
par_zsh_funky \\\\\\\\
|
||||
par_zsh_funky \\\
\\\\\\\\\\\\\\ \!\"\#\$%\&\'\(\)\*+,-./0123456789:\;\<\=\>\?@ABCDEFGHIJKLMNOPQRSTUVWXYZ\[\\\]\^_\`abcdefghijklmnopqrstuvwxyz\{\|\}\~€乗俓僜刓匼哱嘰圽塡奬媆孿峔嶾廫怽慭抃揬擻昞朶梊榎橽歕沑淺漒瀄焅燶<E78485><E787B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>╘‐猏玕琝璡甛痋癨盶瞈砛碶礬禱穃竆筡篭籠糪絓綷縗繺羂耚肻腬臷芢荺萛蒤蔦薥蘚蚛蝄蟎衆裓襖覾診誠謀譢豛賊赲踈躙輁轡運郳醆鈂鉢鋅錦鎈鏫鑌閈闬隲靄韁頫颸餦馶騖骪鬨鮘鯸鱘鳿鵟鶿鸤黒齖㘎<E9BD96>
|
||||
par_zsh_man ### zsh
|
||||
par_zsh_man ### From man env_parallel
|
||||
par_zsh_man aliases work
|
||||
par_zsh_man aliases work
|
||||
par_zsh_man aliases work
|
||||
par_zsh_man aliases work
|
||||
par_zsh_man functions work
|
||||
par_zsh_man functions work
|
||||
par_zsh_man functions work
|
||||
par_zsh_man functions work
|
||||
par_zsh_man variables work
|
||||
par_zsh_man variables work
|
||||
par_zsh_man variables work
|
||||
par_zsh_man variables work
|
||||
par_zsh_man arrays
|
||||
par_zsh_man work,
|
||||
par_zsh_man too
|
||||
par_zsh_man arrays
|
||||
par_zsh_man work,
|
||||
par_zsh_man too
|
||||
par_zsh_man arrays
|
||||
par_zsh_man work,
|
||||
par_zsh_man too
|
||||
par_zsh_man arrays
|
||||
par_zsh_man work,
|
||||
par_zsh_man too
|
||||
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 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 (eval):1: command not found: myfunc
|
||||
par_zsh_underscore OK if no .^^^^^^^^^^^^^^^^^^^^^^^^^ myfunc
|
||||
par_zsh_underscore (eval):1: command not found: myfunc
|
||||
par_zsh_underscore OK if no .^^^^^^^^^^^^^^^^^^^^^^^^^ myfunc
|
Loading…
Reference in a new issue