2009-09-15 2 views
0

Есть ли хороший способ проверить, выполняю ли я вход в текстовую оболочку или запуск сеанса GUI в моем .bashrc? Например, чтобы настроить мой редактор на gedit, если в gnome и emacs, если вы используете командную строку.Тестирование для графического интерфейса в .bashrc

ответ

9

Ваша переменная DISPLAY будет установлена, если вы вошли в X-сеанс.

Edit: Так, это (непроверенные) код должен работать:

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

Фиксированные на основе комментариев.

+1

На самом деле, вам необходимо либо оставить от -Z, или поменять местами редакторы. –

+0

Замена -z на -n также будет работать. –

+0

Упс .. спасибо. – eduffy

2

Использование конвенции Баш:

if [[ $DISPLAY ]]; then 
    export EDITOR=gedit 
else 
    export EDITOR=emacs 
fi