Оболочка Cygwin не выполняет .bashrc - PullRequest
11 голосов
/ 22 марта 2012

После запуска оболочки cygwin он просто находится в неправильном домашнем каталоге:

xfire@codingme.com ~
$ pwd
/cygdrive/c/Users/xfire

Но раньше он был / home / xfire

xfire@codingme.com /etc
$ cat passwd | grep xfire
xfire:unused:22773:10513:U-CORP\xfire,S-1-5-21-527237240-725345543-682003330-12773:/home/xfire:/bin/bash

И/ home / xfire не был выполнен, даже если я скопировал его в / cygdrive / c / Users / xfire, он также не работает!

Ответы [ 5 ]

34 голосов
/ 22 марта 2012

На cygwin я добавляю это к своему ~/.bash_profile:

. ~/.bashrc
9 голосов
/ 27 апреля 2012

Некоторые программы добавляют среду «HOME» в реестр Windows и устанавливают значение «C: \ Users \ xfire», поэтому cygwin принимает этот каталог в качестве домашнего.cygwin.com/faq-nochunks.html

4 голосов
/ 12 августа 2013

В моей версии cygwin я обнаружил, что только ~/.profile исполняется, поэтому добавил

if [ -e "${HOME}/.bash_profile" ]; then
    source "${HOME}/.bash_profile"
fi

в файл .profile.Мой файл .bash_profile содержит еще один тест для .bashrc и выполняет его изнутри.Я также добавил следующие две строки в мой файл .bashrc.

export BASH_ENV="${HOME}/.profile"
export ENV="${HOME}/.profile"

Первая из них обеспечивает выполнение .profile в неинтерактивных терминалах, а вторая - в терминалах POSIX.Я нашел очень полезное объяснение того, что запускается и когда в Справочном руководстве Bash .

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

1 голос
/ 28 марта 2012

Также можно установить переменную BASH_ENV, например, BASH_ENV = 'C: \ DOCUME ~ 1 \ dwyttenb \ .bashrc'

0 голосов
/ 26 декабря 2018

~/.bash_profile выполняется до того, как начальная командная строка будет возвращена пользователю.После этого каждый раз, когда открывается новая оболочка, выполняется ~/.bashrc.

Добавление . ~/.bashrc в конце ~/.bash_profile решило проблему.

Теперь вы можете проверить существующие псевдонимы с помощью команды alias.

Подробнее об GitHub .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...