Intereting Posts
Как я могу узнать, какие флаги компоновщика необходимы для использования данной функции библиотеки C? Как использовать справочные страницы, чтобы узнать, как использовать команды? Моя работа cron не отправляет электронное письмо с любым выходом, я вижу только пустое письмо Настройка linux с достаточным swap-пространством для спящего режима Любая причина, по которой поиск не объединяет несколько слэшей в одну? Как заменить значения в строке с помощью sed, но сохранить строку неповрежденной tee stdout to stderr? Как заставить команду ps показать память в mb вместо kb? Отправьте вывод HTML-файла в тело письма с помощью mailx Переместить / в новый раздел Как настроить декоратор окна для одного окна приложения без GTK3 в Gnome3? grep first n и последние n символов из строки в файле Плавающий MAC-адрес в формате Heartbeat удаление ядер ядра Невозможно связаться с любым KDC из-за ошибки области после перезагрузки системы

Почему можно добавить ~ / .profile в файл ~ / .bash_profile?

При установке RVM появляется следующее сообщение:

* WARNING: You have '~/.profile' file, you might want to load it, to do that add the following line to '/home/dotancohen/.bash_profile': source ~/.profile 

Я обеспокоен тем, что файл ~ / .profile содержит xmodmap ~/.Xmodmap который я, очевидно, не хочу запускать (меняя ключи CapsLock и ESC) каждый раз, когда я открываю новую оболочку.

Почему мудрые разработчики RVM могут предложить sourcing .profile в .bash_profile ?

.profile и .bash_profile идентичны с точки зрения того, когда они предназначены для выполнения: они выполняются при входе в систему. Разница в том, что только bash запускает .bash_profile ; В оболочках типа Bourne (тире, ksh и т. Д.) .profile . Сам Bash запускает .profile если .bash_profile не существует.

Даже если у вас есть bash в качестве вашей оболочки для входа, часто бывает, что файл .profile выполняется, когда вы входите в графический режим – многие дистрибутивы настраивают сценарий запуска сеанса X для работы под sh и load .profile .

Следовательно, .profile использовать .profile вместо .bash_profile чтобы делать такие вещи, как определение переменных среды. Если вам абсолютно не нужны специфичные для bash функции, просто поместите все в .profile . Но даже если вы это сделаете, есть причина сохранить .bash_profile , который является тем, что при загрузке bash он не загружает .bashrc , даже если он является интерактивным. Следовательно, для большинства людей ~/.bash_profile должен состоять из этих двух строк:

 . ~/.profile case $- in *i*) . ~/.bashrc;; esac 

Вы не должны запускать xmodmap из .profile . Это не выполняется, когда вы открываете новую оболочку, но она выполняется, например, при удаленном входе в SSH с пересылкой X11. К сожалению, нет стандартного файла, загружаемого при входе в графический режим. Debian загружает ~/.xsessionrc (я думаю, это относится ко всем менеджерам дисплеев, кроме Gdm, который загружает ~/.xprofile ); другие дистрибутивы имеют разные настройки. Если вам нужна кросс-дистрибутивная переносимость, может быть проще настроить среду рабочего стола для запуска xmodmap при ее запуске. Если все, что вы делаете, это замена CapsLock и Ctrl, это можно сделать с настройками XKB, которые обеспечивают большинство современных настольных сред.

Помните, что bash (1) просто читает .bash_profile , другие производные оболочки Bourne просто читают .profile . Если вы иногда используете другую оболочку, вам нужно сохранить .profile .