爲了在程序中使用什麼類型的應用程序指示符之間進行選擇,我需要檢測我是否在Unity桌面。這可能嗎?當我無法進入環境時有可能嗎?如何檢測我在運行Unity的系統上的時間?
回答
它看起來像有也XDG_CURRENT_DESKTOP:
[email protected]:~$ echo $XDG_CURRENT_DESKTOP
Unity
見https://askubuntu.com/questions/70296/is-there-an-environment-variable-that-is-set-for-unity
是的,這是在'env'的輸出中。 – icedwater 2014-01-03 06:40:35
只是shell執行ps aux | grep unity
,這是針對linux的跨平臺。甚至可以在ARM內核上工作。
在我的11.04 Ubuntu運行的單元上,它返回了unity-2d-panel,unity-2d-launcher和更多的進程。無法確認這是否在每個Linux平臺上都是如此。
可以有其他會話(屬於當前用戶或不同的用戶)當你的當前會話可能不是它時運行Unity。我建議不要依賴Unity流程的存在。 – Manki 2012-09-08 02:03:02
在Ubuntu中,你可以使用下面的命令:
- 回聲$ DESKTOP_SESSION:當您使用Unity和Ubuntu-2D該命令返回Ubuntu的,當你使用Unity 2D和...
- sudo grep「啓動會話」/var/log/lightdm/lightdm.log:由於Ubuntu的最新版本使用lightdm作爲顯示管理器,因此您可以看到lightdm.log文件的最後一行。
查找在統一的環境變量列表中運行以下命令行:
env | grep -i unity
如果作爲in this answer您看到XDG_CURRENT_DESKTOP=Unity
那麼您知道它正在使用中。或者,您當然可以檢查desktop
而不是unity
。
- 1. 如何在Windows 7中檢查系統正常運行時間
- 2. linux - 檢測系統時間的變化
- 3. 如何檢測正在運行的操作系統?
- 4. 如何檢測用戶正在運行的操作系統?
- 5. 如何檢測遊戲在Surface Pro上運行的時間?
- 6. 如何檢測系統時間小時的變化
- 7. 如何讓我的項目在任何系統上運行?
- 8. 如何僞造一個在單獨進程中運行的被測系統的系統時間?
- 9. 在我的系統中找不到JavaFX運行時間
- 10. 如何在Linux系統上運行liquibase
- 11. 檢測我運行上
- 12. 如何計算C中fork()系統調用的運行時間?
- 13. C++如何使運行時間顯示在cmd上?作爲系統變化所需的運行時鐘(「清除」)?
- 14. 檢測在Travis CI上運行代碼的時間
- 15. 如何檢測字節序的系統
- 16. 系統正常運行時間
- 17. 運行Snort入侵檢測系統時出錯
- 18. 如何檢測安裝在系統上的Windows媒體包
- 19. 我如何檢查設定的時間是否等於系統時間
- 20. 如何檢測每小時在MySQL上運行的內容?
- 21. 系統耙測試任務不運行我的測試
- 22. 系統日誌上的異常檢測
- 23. 如何檢測筆記本電腦在.NET電池上運行的時間?
- 24. 我需要應用程序來檢測正在運行的操作系統?
- 25. 如何檢測我的applet中的OpenJDK(系統屬性)?
- 26. 運行系統中的精靈渲染器中的Unity Change sprite
- 27. 我有我的系統上運行的Apache的2個版本
- 28. 正在運行的系統
- 29. 如何在運行時刷新Unity?
- 30. 如何檢查Java是否安裝在我的Windows系統上?
發現這個:http://askubuntu.com/questions/70296/is-there-an-environment-variable-that-is-set-for-unity – wormsparty 2012-01-05 12:53:37
我編輯了我的問題,我可能沒有訪問對環境,所以這不是一個完整的解決方案。 – fredley 2012-01-05 13:28:47
另一種方法是檢查名爲'unity'的進程是否正在運行。我不認爲有跨平臺的方式來做到這一點。對於Linux,你可能想看看:http://stackoverflow.com/questions/939778/linux-api-to-list-running-processes – wormsparty 2012-01-05 13:47:05