20 lines
		
	
	
		
			722 B
		
	
	
	
		
			Plaintext
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			20 lines
		
	
	
		
			722 B
		
	
	
	
		
			Plaintext
		
	
	
		
			Executable File
		
	
	
	
	
# Exitcode 0 (`` has no exitcode, but assignment has):
 | 
						|
true;  a=``; echo $?
 | 
						|
false; a=``; echo $?
 | 
						|
true;  a=$(); echo $?
 | 
						|
false; a=$(); echo $?
 | 
						|
# Exitcode 2 (`cmd` expansion sets exitcode after assignment set it to 0):
 | 
						|
true;  a=`exit 2`; echo $?
 | 
						|
false; a=`exit 2`; echo $?
 | 
						|
true;  a=$(exit 2); echo $?
 | 
						|
false; a=$(exit 2); echo $?
 | 
						|
# Exitcode 1 (redirect sets exitcode to 1 on error after them):
 | 
						|
true;  a=`` >/does/not/exist; echo $?
 | 
						|
false; a=`` >/does/not/exist; echo $?
 | 
						|
true;  a=$() >/does/not/exist; echo $?
 | 
						|
false; a=$() >/does/not/exist; echo $?
 | 
						|
true;  a=`exit 2` >/does/not/exist; echo $?
 | 
						|
false; a=`exit 2` >/does/not/exist; echo $?
 | 
						|
true;  a=$(exit 2) >/does/not/exist; echo $?
 | 
						|
false; a=$(exit 2) >/does/not/exist; echo $?
 |