我发布了some scripts to automatically mount并在Linux中卸载磁盘,现在我得到a request来使当前登录用户拥有磁盘。也就是说,当前持有gui的用户占用了(在这种情况下我们不关心终端用户)。
我如何获取用户名?可能存在大量不同的窗口管理器,因此如果不存在与wm无关的解决方案,则可能需要根据wm的不同解决方案。
首先,针对Gnome的解决方案可能就足够了。
脚本在任何用户会话之外运行(由udev触发)。
答案 0 :(得分:1)
如果您运行的是bash脚本,则当前登录用户的用户名应存储为环境变量$USER
或$USERNAME
。 env
命令将为您提供当前shell中所有环境变量的列表。
现在,如果您想要当前用户的用户ID,请使用id
命令。
答案 1 :(得分:0)
w -hs | grep tty7 | cut -f1 -d ' '
(进行相应修改), tty7
似乎可以正常工作。
答案 2 :(得分:0)
Gnome应该启动一个名为gdm(Gnome显示管理器)的进程。
如果您使用它,则它应该将运行它的用户传递给您。
ps aux | grep gdm