53 lines
		
	
	
	
		
			723 B
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			53 lines
		
	
	
	
		
			723 B
		
	
	
	
		
			Text
		
	
	
	
	
	
| # make sure redirections do not have access to the temporary environment, even
 | |
| # in subshells and command substitutions
 | |
| 
 | |
| a=1
 | |
| a=4 b=7 ss=4 echo $a
 | |
| 
 | |
| a=42
 | |
| a=2 echo foo >&$a
 | |
| a=2 echo foo >&$(echo $a)
 | |
| 
 | |
| foo()
 | |
| {
 | |
| 	local -i a
 | |
| 	local v=0 x=1
 | |
| 	a+=3
 | |
| 	echo $a
 | |
| }
 | |
| 
 | |
| a=4 b=7 ss=4 declare -i ss
 | |
| a=4 b=7 foo
 | |
| echo after: $a
 | |
| 
 | |
| unset a
 | |
| a=4 echo foo >&$(foo)
 | |
| a=1 echo foo >&$(foo)
 | |
| a=1 echo foo >&$(a=4 foo)
 | |
| echo foo >&$(a=4 foo)
 | |
| 
 | |
| a=42
 | |
| a=2 echo foo >&$a
 | |
| a=2 echo foo >&$(echo $a)
 | |
| 
 | |
| unset -f foo
 | |
| foo()
 | |
| {
 | |
| 	local -i a
 | |
| 	local v=0 x=1
 | |
| 	a+=3
 | |
| 	echo $a >&$(ss= declare -i ss)
 | |
| }
 | |
| 
 | |
| a=4 b=7 foo
 | |
| echo after: $a
 | |
| 
 | |
| unset a
 | |
| typeset -i a
 | |
| a=4 eval echo $(echo a+=3)
 | |
| a=2
 | |
| a=9 echo foo >&$(echo $a)
 | |
| a=2
 | |
| a=9 eval echo foo >&$(echo $a)
 | |
| a=2
 | |
| a=9 eval echo foo '>&$(echo $a)'
 | 
