Как вы автоматически входите в / bin / bash?

Я 12.04 LTS и занимаюсь разработкой Ruby on Rails. Когда я запускаю свой терминал и набираю ruby -v, он перечисляет мой Ruby как 1.8.7. Когда я набираю /bin/bash --login, то ruby -v перечисляет его как 2.0.0, что я хочу для запуска rails 4.0. Проблема в том, что мне нужно вводить /bin/bash --login каждый раз, когда я запускаю свой терминал. Есть ли способ, которым я могу автоматически войти в /bin/bash при открытии своего терминала?

1
задан 3 September 2013 в 03:10

3 ответа

  • Открыть терминал
  • В строке меню выберите «Правка»> «Профили»
  • . В открывшемся приглашении «Правка»> «По умолчанию»
  • . На вкладке «Название и команды». -> отметьте «Выполнить команду как оболочку входа в систему» ​​
  • Перезапустите терминал

Теперь вам не нужно снова запускать / bin / bash --login.

0
ответ дан 3 September 2013 в 03:10

Решение, которое работает для меня, это добавить следующую строку в ваш файл .bashrc:

[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" # Load RVM into a shell session *as a function*
0
ответ дан 3 September 2013 в 03:10

Технически, RVM загружается в ваш сеанс оболочки как функция. Если вы используете Bash в качестве оболочки, эта интеграция выполняется с помощью файла конфигурации .bash_profile. Как вы, возможно, знаете, существуют различные «типы» сеансов оболочки, а именно: оболочек входа в систему , интерактивных оболочек и неинтерактивных оболочек. В зависимости от того, какой из ваших сеансов bash задействован, могут быть задействованы разные конфигурационные файлы. Файл конфигурации .bash_profile, который обрабатывает интеграцию RVM, включен в сеансы оболочки входа, но не в «просто» интерактивные или неинтерактивные сеансы оболочки. Для более подробной информации, вы можете прочитать в документах RVM .

Поэтому вам нужно убедиться, что при запуске вашего терминала сеанс оболочки запускается как сеанс оболочки входа в систему. Вероятно, есть настройка с вашим эмулятором терминала для этого С помощью команды /bin/bash --login, которую вы использовали до этого, вы ничего не делаете, кроме как запускаете еще один сеанс оболочки внутри вашего сеанса оболочки, но этот как оболочка входа в систему.

Вы, вероятно, установили Ruby менеджером пакетов (apt-get) в дополнение к установке его через RVM. Поэтому, когда RVM не интегрирован в ваш сеанс оболочки, у вас остается «системный Ruby». Вот почему вы как бы «отступаете» к Ruby 1.8.7.

0
ответ дан 3 September 2013 в 03:10

Другие вопросы по тегам:

Похожие вопросы: