Это старая версия документа!
BASH, SH
Переменные и конфиг файлы
+-----------------+ +------FIRST-------+ +-----------------+ | | | ~/.bash_profile | | | login shell -------->| /etc/profile |-->| ~/.bash_login ------>| ~/.bashrc | | | | ~/.profile | | | +-----------------+ +------------------+ +-----------------+ +-----------------+ +-----------------+ | | | | interactive shell -->| ~/.bashrc -------->| /etc/bashrc | | | | | +-----------------+ +-----------------+ +-----------------+ | | logout shell ------->| ~/.bash_logout | | | +-----------------+
- []–>[] - запускается автоматически
- [—>[] - запускается если прописан или в ручную.
- FIRST - находит первый доступный, остальные игнорируются
Несколько примечаний:
- «интерактивная оболочка» должна быть «интерактивной оболочкой без входа в систему», а «оболочка входа в систему» должна быть «интерактивной оболочкой входа в систему».
- Кроме того, по крайней мере, в Ubuntu, для интерактивных оболочек без входа в систему /etc/bash.bashrc сначала читается ~/.bashrc. Обратите внимание, что /etc/bash.bashrc его нет в ванильном GNU Bash, это модификация, которую делают многие дистрибутивы.
Согласно мануалу по bash, .bash_profile исполняется для оболочек, осуществляющих авторизацию пользователя. .bashrc исполняется для интерактивных оболочек, не авторизующих пользователя.
Документация
Программирования
- http://habrahabr.ru/post/47706/ 1 часть
- http://habrahabr.ru/post/47915/ 2 часть
- http://habrahabr.ru/post/48053/ 3 часть
Видео уроки
Применить настройки
- source ~/.bashrc
Примеры конфигурационных файлов
Примеры
Замена текста в файлах с возможностью рекурсии
find ./ -type f -exec sed -i 's/CHARSET=utf8/CHARSET=cp1251/g' {} \;