Bash - 我如何检查我是否在图形会话下?

时间:2014-05-04 21:21:21

标签: linux bash tty xorg

如果我在“Xorg / XFree86 / XSystem / Mir / Wayland”会话中,我想知道如何检查任何Linux发行版。

如果是,我在Xsession运行命令下 如果没有在cli模式下运行命令

我尝试了以下内容:

xtty=`w -hs | awk '{print $2}' | sort -u | sed 's/^[tty \t]*//' | sed -n '$p'` && echo "tty X(org/Free86/System) = $xtty"

但这只是为了知道我在哪个。

在某些发行版中,图形模式位于tty1,tty5,tty6或tty7中。 但是,我想知道我是否登录了那个tty,如果我在图形会话中。

有人可以帮帮我吗?

1 个答案:

答案 0 :(得分:5)

我非常肯定X和Wayland(根据源代码猜测MIR):

[ "$DISPLAY" ] || [ "$WAYLAND_DISPLAY" ] || [ "$MIR_SOCKET" ] && echo graphical environment