Como você fez $(adduser ..)
em vez de simplesmente adduser ..
, aplica a substituição de comando e essa linha é substituída pela saída desse comando. Portanto, se adduser
produzir uma saída de Adding user ...
, o shell tentará executar Adding user ...
como um comando. Em vez disso, faça:
id -u ${username} > /dev/null 2>&1
if [ $? -eq 1 ];
then
echo "Adding user"
adduser --group ${groupname}
adduser --disabled-password --ingroup ${groupname} --no-create-home --system ${username}
fi
exit 0