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.
5#
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.
10#
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/>.
13#
14# from dan douglas
15expassign()
16{
17	typeset -a a
18	a=("$@")
19	typeset var asn
20
21	while IFS= read -r asn; do
22		IFS=: command eval "$asn"
23		printf '%-14s... %s\n' "$asn" "$var"
24	done <<\EOF
25var=${a[*]}
26var="${a[*]}"
27var=$*
28var="$*"
29var=${a[@]}
30var="${a[@]}"
31var=$@
32var="$@"
33EOF
34}
35
36expassign one:::two three:::four
37