Ubuntu如何查看当前使用的桌面环境

陌辰小哥_8585

陌辰小哥_8585

2026-08-14

688人浏览

原创

最可靠方法是执行echo $xdg_current_desktop,因其由xdg标准定义、桌面会话启动时自动设置,不依赖进程、登录管理器或显示协议,常见输出如gnome、kde、xfce等;需在已登录图形界面的终端中运行。

ubuntu如何查看当前使用的桌面环境

直接看 $XDG_CURRENT_DESKTOP 就行,这是最可靠、最通用的方法,其他方式要么不准,要么要装额外工具。

为什么优先用 $XDG_CURRENT_DESKTOP

这个环境变量由桌面会话启动时自动设置,是 XDG 标准定义的权威标识。它不依赖进程是否存在、不依赖登录管理器类型(GDM3/SDDM/LightDM),也不受 Wayland/X11 切换影响。常见输出有:

  • GNOME 或 ubuntu:GNOME → Ubuntu 默认 GNOME
  • KDE → KDE Plasma(Kubuntu)
  • XFCE → Xubuntu
  • MATE → Ubuntu MATE
  • CINNAMON → Linux Mint Cinnamon

注意:echo $XDG_CURRENT_DESKTOP 必须在已登录图形界面的终端中运行;SSH 远程连接且未转发 X11 时该变量为空。

$DESKTOP_SESSION 有时能用,但容易误导

这个变量值更偏向“会话名”,不是标准桌面环境标识。比如:

  • Ubuntu 22.04+ 上常为 ubuntu,不代表 GNOME 版本或变体
  • Kubuntu 可能是 plasma,但某些定制 ISO 会写成 plasma5 或 default
  • 手动切换会话后可能残留旧值,不刷新

它适合快速排查是否进了某个会话,但不能作为判断 DE 类型的唯一依据。

Obsidian (Linux)
Obsidian (Linux)

操作 Obsidian 库(纯 Markdown 笔记),并通过 notesmd-cli 实现自动化。

下载

靠 ps 查进程只能当备选

当你发现 $XDG_CURRENT_DESKTOP 为空(比如某些轻量级环境或故障会话),可以用进程辅助判断:

  • ps -e | grep -E "gnome-shell|plasmashell|xfce4-session|cinnamon-session|mate-session"
  • 看到 gnome-shell → GNOME;plasmashell → KDE Plasma;xfce4-session → Xfce

但要注意:Wayland 下部分进程名不同(如 gnome-shell 仍存在,但 weston 或 hyprland 这类不是桌面环境);另外,如果用户同时开了多个桌面会话(比如嵌套 Xephyr),ps 可能返回多个匹配项,需结合 loginctl 确认当前活跃会话。

别用 neofetch 或 screenfetch 做第一判断

这两个工具确实好看又信息全,但它们内部仍是读取 $XDG_CURRENT_DESKTOP 或 fallback 到 ps + 启动脚本路径推断。问题在于:

  • 需要先 sudo apt install neofetch,不是系统默认安装
  • 某些最小化安装或容器环境压根没 GUI 工具链,neofetch 会报错或显示不全
  • 它的版本号解析逻辑复杂,比如 GNOME 版本可能来自 gnome-shell --version,但该命令在某些 Snap 安装下不可用

真正需要版本号时,再单独调用对应命令更可控,比如 gnome-shell --version 或 plasmashell --version。

实际操作中,95% 的情况一条 echo $XDG_CURRENT_DESKTOP 就够了;剩下 5%,往往是桌面没正常启动或环境变量被覆盖——这时候查进程、看 ~/.xsession-errors 或重启显示管理器比换命令更有用。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
常见的linux系统有哪些
常见的linux系统有哪些

linux系统有Ubuntu、Fedora、CentOS、Debian、openSUSE、Arch Linux、Gentoo、Slackware、Linux Mint、Kali Linux。更多关于linux系统的文章详情请阅读本专题下面的文章。php中文网欢迎大家前来学习。

2023.10.27

6521

23

ubunt上安装和配置vnc
ubunt上安装和配置vnc

安装方法:安装VNC服务器、启动VNC服务器、设置VNC密码等等。想了解更多ubuntu的相关内容,可以阅读本专题下面的文章。

2023.12.28

2061

8

ubuntu启动黑屏解决方法
ubuntu启动黑屏解决方法

ubuntu启动黑屏解决方法:检查是否是电源问题、检查内存是否接触不良、检查显卡问题等。想了解更多ubuntu的相关内容,可以阅读本专题下面的文章。

2023.12.28

1790

6

为什么ubuntu有网络连接但不能上网
为什么ubuntu有网络连接但不能上网

ubuntu有网络连接但不能上网的原因:1、dns配置问题;2、代理服务器设置问题;3、网络防火墙设置问题;4、路由器或调制解调器设置问题;5、网络驱动程序问题;6、网络配置文件问题;7、其他问题。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2024.09.05

1041

6

ubuntu安装golang
ubuntu安装golang

本专题整合了ubuntu安装golang所有方法汇总,阅读下面的文章了解更多详细操作。

2025.12.13

359

13

Linux如何安装Ubuntu并完成基础系统优化教程
Linux如何安装Ubuntu并完成基础系统优化教程

访问Ubuntu官网或国内镜像站下载ISO镜像,利用Rufus或Etcher工具制作USB启动盘。重启电脑进入BIOS设置U盘引导,按提示完成分区与账户设置以安装系统。安装完毕后,首要任务是将软件源更换为国内镜像以加速下载,接着在终端执行更新命令升级系统组件,并安装显卡驱动及常用开发工具,至此即可完成基础环境搭建与优化。

2026.03.31

104

6

Ubuntu系统安装与基础配置
Ubuntu系统安装与基础配置

本指南详解Ubuntu系统安装全流程:从制作启动盘、分区规划到驱动配置,手把手带你完成系统部署。涵盖软件源优化、常用工具安装及桌面个性化设置,助你快速搭建稳定高效的Linux开发环境,零基础也能轻松上手。

2026.04.15

146

6

Ubuntu日常操作与高效使用
Ubuntu日常操作与高效使用

本指南聚焦Ubuntu日常操作与效率提升,深入解析终端命令、APT软件管理及权限控制等核心技能。从文件管理到开发环境搭建,再到网络配置与数据备份,全方位助你摆脱鼠标依赖,构建流畅的Linux工作流,让系统操作更加得心应手。

2026.04.17

87

6

Ubuntu系统进阶与运维管理
Ubuntu系统进阶与运维管理

本指南深入Ubuntu系统进阶与运维管理核心,涵盖Shell脚本自动化、性能监控及Docker容器化部署等高级技能。你将掌握磁盘管理、防火墙加固及故障排查等关键运维手段,从普通用户蜕变为系统管理者,构建安全、稳定且高效的企业级Linux运行环境。

2026.04.17

91

6

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程