0

我们刚刚开始使用 cfengine,并希望在我们的脚本中使用当前登录的 Ubuntu 用户名。

"cur_user" 字符串 => execresult("/usr/bin/id -un","noshell")

这将返回当前用户。但是,正如您现在 cfengine 在后台以 root 身份运行的那样,结果总是相同的答案,那就是 root。

他们是预定义的东西还是你们现在的东西?

氪,

乔里

4

1 回答 1

1

正如您已经写过的那样, /usr/bin/id 总是返回正在运行当前进程的用户的 id。因此,在 Cfengine 中使用此命令始终返回用户 root(只要 Cfengine 以 root 身份运行)。

如果您想获取所有当前登录用户的列表,您可能需要尝试命令 /usr/bin/who。但是,这不是 Cfengine 特定的,您需要处理输出。您应该记住,使用 Linux 或 UNIX,可以有多个用户同时登录。

于 2014-12-07T16:37:02.370 回答