Возможно, вы уже нашли решение, но поскольку этот вопрос все еще отображается в Google, вот еще один ответ, который работает на Linux:
mail = io.popen("mail -s 'SUBJECT' user@example.com", "w")
mail:write("testing some stuff\n\4")
-- tested with lua 5.2 on ubuntu server
io.popen открывает почтовую программу в виде файла какобъяснено в справочном руководстве lua.Важно открыть его в режиме записи («w»), чтобы иметь возможность фактически написать тело письма.Затем вы просто пишете свое сообщение с помощью: write, и когда вы закончите, добавьте символ новой строки "\ n", за которым следует символ EOT "\ 4", чтобы сообщить программе об отправке сообщения.
Этот методимеет преимущество в том, что вам не нужно обрабатывать отправку сообщения самостоятельно, как с библиотекой LuaSocket, и вам не нужно включать поддержку SMTP на вашем почтовом сервере, что может потребовать много усилий для правильной настройкии недостаток в том, что вам нужен доступ к mailx, поэтому вы не можете отправлять сообщения откуда угодно.
Надеюсь, это поможет:)