это то понятно. Но если чет пойдет не так - файл будет испорчен
cp файл && rm старый файл || echo "что-то пошло не так"
RewriteCond %{HTTP_HOST} ^(www\.|)(sub1|sub2|sub3)\.site\.ru$
RewriteRule ^(.+)$ https://site.ru/$1? [L,R=301]
RewriteCond %{HTTP_HOST} !^www\.site\.ru$
# не ввв основного домена
RewriteCond %{HTTP_HOST} ^(.+)\.site\.ru$
#Суб домен есть и он больше 1 символа
RewriteRule ^(.+)$ https://site.ru/%1? [L,R=301]
#Подставялем
если есть замечания то хотелось бы видеть конкретные места.