通过Perl中的登录脚本查找目录服务用户的名称

时间:2010-09-12 14:52:35

标签: perl macos scripting shell

我在Perl中创建了一个登录脚本,该脚本必须在Mac OS X客户端上运行并记录“登录目录服务”用户名。

我尝试分别使用getlogin()getpwuid($<)

现在问题是,由于登录脚本在客户端登录时以root身份在系统上运行,getpwuid($<)总是以root身份提供用户名。使用getlogin()函数时,我确实获得了用户名,但是对于先前在系统上登录的用户而言。

我正在使用由Mac OS服务器组成的开放目录环境。

有关如何解决此问题的任何想法?

2 个答案:

答案 0 :(得分:0)

你能使用last吗? (man page)登录名称和持续时间已在wtmp文件中。我认为你不需要自己记录它们。

答案 1 :(得分:0)

您在谈论loginhook脚本吗?如果是这样,它将作为参数传递用户名,因此$ARGV[0]应该是您所需要的。