0

有没有一种好方法可以测试我是在登录文本外壳还是在 .bashrc 中启动 GUI 会话?例如,如果在 gnome 和 emacs 中使用命令行,则将我的编辑器设置为 gedit。

4

2 回答 2

9

DISPLAY如果您登录到 X 会话,您的变量将被设置。

编辑:所以,这个(未经测试的)代码应该可以工作:

[ -n "${DISPLAY}" ] && export EDITOR=gedit || export EDITOR=emacs

根据评论修复。

于 2009-09-15T00:29:18.323 回答
2

使用 bash 约定:

if [[ $DISPLAY ]]; then
    export EDITOR=gedit
else
    export EDITOR=emacs
fi
于 2009-09-15T14:31:02.497 回答