我在perl脚本中使用sendmail,并且想从调用该脚本的用户那里获取“收件人”地址。
换句话说,我希望发件人和发件人地址相同。我该怎么办?
谢谢。
答案 0 :(得分:0)
给出您的代码
open(Mail, "|/usr/sbin/sendmail -t");
print MAIL "To: $to\n"
print MAIL $msg
close(MAIL)
我建议在其前面添加
$to ||= $ENV{SUDO_USER} || $ENV{USERNAME} || $ENV{LOGNAME} || $ENV{USER} || getpwuid $<;
在此情况下,我建议您在最后一个标头之后添加一个额外的换行符,以便如果$ msg刚好以可能看起来像标头的内容开头,则不会将其用作标头。除非这实际上是您要依赖的行为...(但我建议您不要依赖该行为...)
答案 1 :(得分:-1)
实际上没有用户的“电子邮件地址”属性。如果您只是通过本地MTA,则用户的地址通常是其用户名,您可以在类似Unix的系统上使用namespace NETCoreWebApp.Controllers
{
public class HomeController : Controller
{
private readonly IModelManager iModelManager = new ModelManager();
public IActionResult Index()
{
return View();
}
public IActionResult Hotel()
{
return View();
}
[HttpPost]
public IActionResult Index(SearchRoomsModel model)
{
string query = string.Format("{0},{1} 12:00,{2} 12:00,{3},{4}", model.Location, model.CheckIn, model.CheckOut, model.NumAdults, model.NumChild);
iModelManager.GetAvailableRooms(query);
return RedirectToAction("Hotel");
}
[ResponseCache(Duration = 0, Location = ResponseCacheLocation.None, NoStore = true)]
public IActionResult Error()
{
return View(new ErrorViewModel { RequestId = Activity.Current?.Id ?? HttpContext.TraceIdentifier });
}
}
}
来检索该用户名。