next up previous contents index
Next: Работа с файлами Up: Настройка оболочки Previous: Добавление каталога в путь   Contents   Index

Сохранение настроек оболочки

В Вашем домашнем каталоге существует ряд файлов начальной конфигурации, редактируя которые, Вы можете сохранить требуемую конфигурацию. Вы можете также определить в них команды, которые будут выполнены при регистрации, завершении работы или запуске новой копии оболочки. Все эти файлы текстовые и могут быть отредактированы любым текстовым редактором.

Когда Вы впервые регистрируететсь в системе, 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' в Вашем домашнем каталоге, если этот файл существует. Чтобы выполнить команды при выходе из системы, поместите их в данный файл.



Alex Otwagin 2002-12-16