Se você usar .*.domain1.com como seu padrão, corresponderá essencialmente a caracteres indesejados, porque . significa qualquer caractere .
Você deseja substituir apenas "caracteres de palavra" (letras ASCII, dígitos ou sublinhados) usando \w+ .
Como normal sed regex não sabe sobre + , certifique-se de adicionar -r para sed para usar regex estendido.
Certifique-se também de usar aspas! Caso contrário, * pode ser interpretado por bash.
E você deve escapar de . no padrão, caso contrário, ele também corresponderá a qualquer caractere.
sed -i.bak -r 's/\w+\.domain1\.com/domain2.com/g' file