init version.
[bush.git] / tests.bak / varenv7.sub
blob4b25960612aedf4cde622750960e34fd271a8c92
1 #   This program is free software: you can redistribute it and/or modify
2 #   it under the terms of the GNU General Public License as published by
3 #   the Free Software Foundation, either version 3 of the License, or
4 #   (at your option) any later version.
6 #   This program is distributed in the hope that it will be useful,
7 #   but WITHOUT ANY WARRANTY; without even the implied warranty of
8 #   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
9 #   GNU General Public License for more details.
11 #   You should have received a copy of the GNU General Public License
12 #   along with this program.  If not, see <http://www.gnu.org/licenses/>.
14 foo()
16         local -a myvar=()
17         local -r myvar=0
19         echo "${myvar[@]}"
20         declare -p myvar
23 foo2()
25         local -i myvar=0
26         local -r myvar=1
28         echo "${myvar}"
29         declare -p myvar
32 declare -a outside=()
33 declare -r outside
34 declare -p outside
36 outside1=1
37 declare -ir outside1
38 declare -p outside1
40 tempenv=foo declare -r tempenv
41 echo tempenv = $tempenv
43 foo
44 foo2
46 tempvar1=foo declare -r tempvar1
47 echo ${tempvar1@A}
49 tempvar2=bar declare -r tempvar2=qux
50 echo ${tempvar2@A}
52 unset foo
53 readonly var=outside
55 func()
57         local var=inside
58         echo "inside: $var"
61 func
62 echo outside: $var
64 unset -f f
65 unset VAR1 VAR2
66 export VAR1=abc VAR2=abc
68 f()
70         local VAR1; local VAR2
71         echo local: ${VAR1-unset1} ${VAR2-unset2}
72         printenv VAR1 ; printenv VAR2