ПРИМІТКА. Будь ласка, дивіться мою другу редакцію нижче для оновлення проблеми.
До минулого тижня Cygwin працював зі мною чудово. Тепер .bashrc не отримує джерела. Я, мабуть, щось встановив або щось змінив, але не можу точно пригадати, що спричинило проблему. Коли я запускаю Cygwin, я перебуваю в своєму будинку Windows, і жоден з моїх псевдонімів не працює. Я маю вручну джерело .bashrc. Далі - мій Cygwin.bat:
@echo off
C:
chdir C:\cygwin\bin
set CYGWIN=tty notitle glob
bash --login -i
Будь-які ідеї?
EDIT: Мій .bash_profile містить таке,
# source the users bashrc if it exists
if [ -f "${HOME}/.bashrc" ] ; then
source "${HOME}/.bashrc"
fi
EDIT2: ВАЖЛИВО! Коли я запустив Cygwin, він запускається в домашній папці Windows. Я спробував помістити свої файли .bash_profile та .bashrc у цю папку, і вони були правильно поставлені! Це означає, що проблема зводилася до з'ясування того, чому Cygwin запускається в домашній папці Windows, а не у звичайній домашній папці Cygwin.
EDIT3: Результати роботи grep Gulshan / тощо / passwd /
$ grep Gulshan /etc/passwd
Administrator:unused:500:513:U-Gulshan-HP\Administrator,S-1-5-21-1235613160-4193452482-2032876723-500:/home/Administrator:/bin/bash
Guest:unused:501:513:U-Gulshan-HP\Guest,S-1-5-21-1235613160-4193452482-2032876723-501:/home/Guest:/bin/bash
Gulshan:unused:1000:513:U-Gulshan-HP\Gulshan,S-1-5-21-1235613160-4193452482-2032876723-1000:/home/Gulshan:/bin/bash
/cygdrive/c/Users/foo
а не C:\Users\foo
)
HOME=/home/yourname bash -l
підказку терміналу? Якщо я маю рацію, це повинно дати вам належну оболонку. Зауважте, що це діагностика або в кращому випадку не рішення; нам ще потрібно з’ясувати, чому $HOME
в першу чергу ви невірні. Основна проблема - неправильне налаштування $HOME
; Баш поводиться правильно.
echo $HOME
друком?