Quando ouço "fazer algo sobre a ÚLTIMA ocorrência de ...", eu alcanço tac
para reverter as linhas, e fazer algo na primeira ocorrência.
tac file | nawk '/^\+/&&!done {$1 = "+" substr($1,2)-1; done=1} 1' | tac
No Solaris, você pode não ter o tac instalado. Você pode implementá-lo como este :
tac() { sed -n -e '1!G' -e '$p' -e h "$@"; }