Это - версия информатики парадокса курицы-и-яйца. Я не могу думать о способе не записать первоначальный компилятор в ассемблере или некотором другом языке. Если это, возможно, было сделано, я должен, Lisp, возможно, сделал его.
На самом деле, я думаю, что Lisp почти квалифицирует. Выезд его статья в Википедии . В соответствии со статьей, функция оценки Lisp могла быть реализована на IBM 704 в машинном коде с полным компилятором (записанный в самом Lisp) возникающий в 1962 в MIT.
Нет такого стандартного сопоставления учетной записи пользователя с адресом электронной почты - по крайней мере, не для обычного / etc / passwd, производного учетные записи. Учтите, что у пользователя может даже не быть адреса электронной почты.
Не существует стандартного сопоставления учетных записей пользователей с адресами электронной почты RFC822 (т. Е. User @ domain ). Как правило, стандартные настройки агентов передачи почты принимают локальную почту на адреса без домена и доставляют ее в учетную запись пользователя с тем же именем. Но даже на это нельзя положиться, поскольку у вас может даже не быть MTA.
В UNIX это можно сделать путем отправки электронной почты через локальный агент передачи почты - достаточно просто вызвать / usr / bin / mail
. Системный администратор отвечает за настройку локального MTA, чтобы убедиться, что электронная почта работает правильно.
Если вы хотите отправить электронное письмо локальному пользователю, просто отправьте его на его имя пользователя - если он где-то читал свою электронную почту кроме локального, MTA должен быть настроен для его пересылки им.
Если вы просто хотите использовать правильный адрес электронной почты "от" при отправке электронной почты от имени локального пользователя, чтобы они получали ответы в нужном месте - опять же, просто используйте их имя пользователя. MTA должен быть настроен для правильной трансляции.
Такой способ работы хорош, потому что это означает, что эта конфигурация должна выполняться только в одном месте (MTA),
Это зависит от того, как хранится пользователь. В простом файле passwd нет адреса электронной почты, только имя пользователя. Но вы можете получить дополнительную информацию с помощью другого метода аутентификации, такого как LDAP или SQL.
Запрашивать у пользователя адрес электронной почты. Если у вас нет гарантии, что это адрес электронной почты user @ hostname , то как еще вы рассчитываете определить, какой у них адрес электронной почты, кроме как спросить их?
Вы не можете получить фактический адрес электронной почты никаким стандартным способом. Я бы попытался отправить почту только на имя пользователя
. Шансы, что он окажется в правильном домене, на самом деле не так уж и плохи ...