Как получить пользовательскую конфигурацию экрана Gnu для загрузки .bash_profile и .bash_aliases? - PullRequest
3 голосов
/ 05 января 2011

У меня есть пользовательская конфигурация экрана myscreenconfig и .screenrc. myscreenconfig выглядит так:

source .screenrc
screen 0 bash
title 'notes' 
screen 1 bash
title 'bash' 
[etc.]

.screenrc имеет эти строки вверху:

altscreen on
shell -${SHELL}

Мой .bash_profile файл устанавливает множество вещей и затем вызывает source $HOME/.bash_aliases.

Если я запускаю screen без каких-либо аргументов, мой .bash_profile загружается и .bash_aliases загружается. Но если я запускаю экран через screen -c myscreenconfig, загружается только .bash_profile, а не .bash_aliases. Зачем? Как я могу это исправить?

Ответы [ 4 ]

3 голосов
/ 29 августа 2011

Для меня работало создание символической ссылки между тем, где у меня были настройки bash, и .bashrc (которого у меня не было):

ln -s ~/.bash_profile ~/.bashrc
2 голосов
/ 21 мая 2012

У меня была такая же проблема на одной из машин, которые я использую. Прочитав приведенное выше предложение о связывании двух файлов ресурсов bash, я понял, что следующий комментарий был помещен в комментарии в файле .bash_profile на этом конкретном компьютере:

# Get the aliases and functions
# if [ -f ~/.bashrc ]; then
#    . ~/.bashrc
# fi

После удаления знаков комментария (#), предшествовавших строкам блока if, настройки в .bashrc стали доступны и в сеансах экрана.

0 голосов
/ 19 октября 2012

Я использую это в моем .bashrc

if [ "$TERM" = "screen" ]; then
        if [ -f ~/.bash_profile ]; then
                . ~/.bash_profile
        fi
fi
0 голосов
/ 05 января 2011

Поскольку вы не используете логины в myscreenconfig. Используйте (IIRC) screen 0 -bash или попробуйте комбинации с deflogin on.

...