如何获得用户名拥有当前活动GUI会话?(How do I get the username owni

2019-10-18 10:42发布

我发表一些脚本来自动挂载和Linux的卸载磁盘,现在我有一个请求,以使在当前登录用户所拥有的磁盘。 也就是说,用户目前持有占领了GUI(我们不关心在这种情况下,终端的用户)。

我将如何去获取用户名的持有? 可能有不同的窗口管理器的群众,根据WM如此不同的解决方案可能是必要的,如果没有WM-独立的解决方案存在。

一开始,只是针对一个GNOME的解决方案可能是不够的。

该脚本运行的任何用户会话(由udev触发)之外。

Answer 1:

如果您运行的是bash脚本,在当前登录用户的用户名应被存储为一个环境变量, $USER$USERNAME 。 该env命令会给你在当前shell的所有环境变量的列表。

现在如果你想在当前用户的用户ID,使用id命令。



Answer 2:

w -hs | grep tty7 | cut -f1 -d ' ' w -hs | grep tty7 | cut -f1 -d ' '看来,如果你的Xserver的连接到工作tty7 (相应的修改)。



Answer 3:

侏儒应该启动一个过程被称为GDM(GNOME显示管理器)。

如果使用grep命令它,它应该通过你是谁运行它的用户。

ps aux | grep gdm 


文章来源: How do I get the username owning the currently active gui session?