📅  最后修改于: 2023-12-03 14:55:47.652000             🧑  作者: Mango
在 Linux 系统中,显示服务器通常使用 Xorg 或 Wayland。如果您编写了一个需要知道使用的显示服务器的 shell 脚本或命令,下面是一些方法。
使用 ps
命令可以获取当前正在运行的 Xorg 或 Wayland 进程。通过检查进程名来确定使用的显示服务器。
ps -eo comm= | grep -q "^Xorg$" && echo "Using Xorg"
ps -eo comm= | grep -q "^gnome-shell$" && echo "Using Wayland"
这个命令会执行两个 grep
命令,它们分别查找进程名为 Xorg 或 gnome-shell 的进程。如果找到,则输出相应的消息。
运行时环境变量可以提供或暗示使用的显示服务器。假设您的脚本或命令对 WAYLAND_DISPLAY
环境变量需要不同的行为,您可以检查该变量的存在并确定使用的显示服务器。
if [ -n "$WAYLAND_DISPLAY" ]; then
echo "Using Wayland"
else
echo "Using Xorg"
fi
这个命令会检查 WAYLAND_DISPLAY
环境变量是否被设置,如果设置了,则输出 "Using Wayland",否则输出 "Using Xorg"。
xprop
命令可以提供当前使用的显示服务器的版本信息。您可以使用这个命令来确定正在使用的显示服务器。
xprop -notype _MOTIF_WM_HINTS | grep "USE_WM_WINDOW_ROLE" > /dev/null 2>&1 \
&& echo "Using Xorg" \
|| echo "Using Wayland"
这个命令会检查 _MOTIF_WM_HINTS
属性是否被设置,该属性只能在 Xorg 中使用。如果检查到该属性,则输出 "Using Xorg",否则输出 "Using Wayland"。
以上就是一些可以检查当前使用的显示服务器的方法。您可以根据您的需求选择其中一个。