xref: /freebsd/bin/sh/tests/builtins/var-assign2.0 (revision af23369a6deaaeb612ab266eb88b8bb8d560c322)
1# $FreeBSD$
2IFS=,
3
4SPECIAL="break,\
5	:,\
6	continue,\
7	. /dev/null,\
8	eval,\
9	exec,\
10	export -p,\
11	readonly -p,\
12	set,\
13	shift 0,\
14	times,\
15	trap,\
16	unset foo"
17
18UTILS="alias,\
19	bg,\
20	bind,\
21	cd,\
22	command echo,\
23	echo,\
24	false,\
25	fc -l,\
26	fg,\
27	getopts a var,\
28	hash,\
29	jobs,\
30	printf a,\
31	pwd,\
32	read var < /dev/null,\
33	test,\
34	true,\
35	type ls,\
36	ulimit,\
37	umask,\
38	unalias -a,\
39	wait"
40
41set -e
42
43# With 'command', variable assignments do not affect the shell environment.
44
45set -- ${SPECIAL}
46for cmd in "$@"
47do
48	${SH} -c "VAR=0; VAR=1 command ${cmd}; exit \${VAR}" >/dev/null 2>&1
49done
50
51set -- ${UTILS}
52for cmd in "$@"
53do
54	${SH} -c "VAR=0; VAR=1 command ${cmd}; exit \${VAR}" >/dev/null 2>&1
55done
56