如何检测运行Unity的系统何时运行?

时间:2012-01-05 12:50:09

标签: c++ ubuntu-unity

为了选择用于程序的应用程序指示器类型,我需要检测我是否在Unity桌面中。这可能吗?当我无法访问环境时是否可能?

4 个答案:

答案 0 :(得分:4)

看起来还有XDG_CURRENT_DESKTOP:

rubiojr@rubiojr-VirtualBox:~$ echo $XDG_CURRENT_DESKTOP 
Unity

请参阅https://askubuntu.com/questions/70296/is-there-an-environment-variable-that-is-set-for-unity

答案 1 :(得分:3)

在Ubuntu中,您可以使用以下命令:

  • echo $ DESKTOP_SESSION :当您使用Unity 2D和uBntu-2d时,此命令返回ubuntu ...
  • sudo grep“开始会话”/var/log/lightdm/lightdm.log :由于上一版本的Ubuntu使用lightdm作为显示管理器,您可以看到最后一行 lightdm.log文件。

答案 2 :(得分:2)

只是shell执行ps aux | grep unity,这是linux的跨平台。甚至适用于ARM内核。

在我的11.04 Ubuntu运行统一上,它返回unity-2d-panel,unity-2d-launcher和更多进程。无法确认每个Linux平台上是否都是这样。

答案 3 :(得分:1)

通过运行以下命令行查看环境变量列表中的单位:

env | grep -i unity

如果in this answerXDG_CURRENT_DESKTOP=Unity您看到desktop,那么您就知道它正在使用中。或者,您当然可以检查unity而不是{{1}}。