envsubst pode obter uma lista dos argumentos para substituir:
envsubst '$MY_VAR_USERNAME $MY_VAR_PASSWORD'
(Eles devem estar em uma única string, eles devem ter os sinais $ , irritantemente.)
Note que o operador de comparação de string padrão é = , não == , o último funciona no Bash e talvez outros, mas não em dash (Debian e% s /bin/sh )
Além disso, você pode pular o sed e usar as expansões do shell para remover o sufixo do nome do arquivo: "${srcFile%.tpl}"