# basic cases a=1 a+=4 echo $a x=(1 2 3) x+=(4 5 6) echo ${x[@]} x[4]+=1 echo ${x[@]} # trickier cases a+=5 printenv a echo $a # if the integer flag is set, ksh93 appears to do arithmetic += and evaluate # old value as an arithmetic expression a= typeset -i a a+=7 echo $a b=4+1 typeset -i b b+=37 echo $b unset x x=(1 2 3 4 5) typeset -i x x[4]+=7 echo ${x[@]} unset x typeset -i x x=([0]=7+11) echo ${x[@]} unset x x=(1 2 3 4 5) typeset -i x #x[4]=7+11 x=(1 2 3 4 [4]=7+11 ) echo ${x[@]} x=( 1 2 [2]+=7 4 5 ) echo ${x[@]} x+=( [3]+=9 [5]=9 ) echo ${x[@]} unset a a=1 export a+=4 printenv a printenv a+ unset x typeset -i x=4+5 echo $x unset x typeset x+=4 echo $x typeset -i x+=5 echo $x readonly x+=7 echo $x x+=5