1

我发布了一些脚本来在 Linux 中自动挂载和卸载磁盘,现在我收到了一个请求,让当前登录的用户拥有磁盘。即当前持有gui的用户被占用(本例中我们不关心终端用户)。

我将如何获取用户名?可能有许多不同的窗口管理器,因此如果不存在独立于 wm 的解决方案,则可能需要取决于 wm 的不同解决方案。

首先,仅针对 Gnome 的解决方案可能就足够了。

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

4

3 回答 3

1

如果您正在运行 bash 脚本,则当前登录用户的用户名应存储为环境变量,$USER或者$USERNAME. 该env命令将为您提供当前 shell 中所有环境变量的列表。

现在,如果您想要当前用户的用户 ID,请使用该id命令。

于 2013-08-01T17:53:03.847 回答
0

Gnome 应该启动一个名为 gdm(Gnome 显示管理器)的进程。

如果您使用 grep 获取它,它应该将运行它的用户传递给您。

ps aux | grep gdm 
于 2019-01-11T14:55:13.483 回答
0

w -hs | grep tty7 | cut -f1 -d ' 'tty7如果您的 xserver 附加到(相应地修改),似乎可以工作。

于 2019-01-11T14:39:41.663 回答