echo $sourceid_$i expande duas variáveis separadas: $sourceid_ e $i . A maneira mais simples de fazer o que você está tentando fazer é com uma referência indireta:
sourceid_2="blah"
i=2
var=sourceid_$i
echo "${!var}"
Mas como @ dave_thompson_085 apontou, os arrays geralmente são a melhor maneira de fazer esse tipo de coisa:
declare -a sourceid
sourceid[2]="blah"
i=2
echo "${sourceid[i]}"
Observe que as matrizes são uma extensão bash e não estão disponíveis em shells mais básicas.