В Вашем домашнем каталоге существует ряд файлов начальной конфигурации, редактируя которые, Вы можете сохранить требуемую конфигурацию. Вы можете также определить в них команды, которые будут выполнены при регистрации, завершении работы или запуске новой копии оболочки. Все эти файлы текстовые и могут быть отредактированы любым текстовым редактором.
Когда Вы впервые регистрируететсь в системе, bash проверяет наличие файла `/etc/profile', и если он существует, оболочка выполняет находящиеся в нем команды. Это наиболее общий, общесистемный файл запуска, который выполняется для всех пользователей; лишь системный администратор может изменить его содержимое.
Далее bash считывает и выполняет команды в файле `.bash_profile', ``скрытом'' файле в Вашем домашнем каталоге. Если Вы хотите, чтобы команда выполнялась при каждой Вашей регистрации в системе, включите ее в этот файл.
Если Вы создаете новую копию оболочки (кроме той, в которую Вы попали после регистрации), bash считывает и выполняет команды в файле `.bashrc' Вашего домашнего каталоге. Команды в этом файле выполняются для всех копий, кроме той, которая стартовала при регистрации пользователя.
Различные файлы конфигурации для стартовой копии оболочки и остальных копий нужны для того, чтобы помещенная в `.bash_profile' конфигурация не изменялась во время всего сеанса работы пользователя в системе. Чтобы избежать повторения одних и тех же команд в разных копиях оболочки, добавьте в конец файла `.bash_profile' следующие строки:
if [ -f ~/.bashrc ]; then . ~/.bashrc; fi
Это приведет к запуску файла `.bashrc' из Вашего домашнего каталога при регистрации в системе. Таким образом, Вы можете поместить все настройки в файл `.bashrc', и он будет запускаться в любом случае. Любые настройки в файле `.bash_profile' до этой строки будут запущены только при начальной регистрации.
К примеру, простейший файл `.bash_profile' может выглядеть следующим образом:
# Комментариив скриптах оболочки начинаются с #.
# Эти строки не выполняются bash, и служат для документирования.
# Запуск команд из .bashrc
if [ -f ~/.bashrc ]; then . ~/.bashrc; fi
Простейший файл .bashrc может выглядеть так:
# Устанавливаем вывод оглавлений каталогов в цвете.
alias ls="ls --color=auto"
# Пусть "l" выдает подробный листинг каталога.
alias l="ls -l"
# Установим собственный путь поиска.
PATH="/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games:~/bin:."
# Настроим приглашение оболочки.
PS1="[\w] $ "
# Сдеалем файл истории команд длиннее.
HISTSIZE=20000
HISTFILESIZE=20000
# Экспорт переменных, чтобы сделать их известными
# всем переменным, определяемым позже.
export HISTSIZE HISTFILESIZE PATH PS1
Этот `.bashrc' устанавливает несколько полезных псевдонимов команд и использует собственный путь поиска и приглашение оболочки при запуске ее новой копии; из-за содержимого предыдущего `.bash_profile', этот файл `.bashrc' запускается и при регистрации в системе.
Когда Вы покидаете систему, bash считывает и выполняет команды в файле `.bash_logout' в Вашем домашнем каталоге, если этот файл существует. Чтобы выполнить команды при выходе из системы, поместите их в данный файл.