Używam MinGW na Windows 7. Mam .bashrc
trochę aliasów. Plik znajduje się w moim katalogu domowym, w którym MinGW mnie uruchamia, więc wierzy również, że ten folder jest moim folderem domowym. Nie ładuje automatycznie zawartości folderu. Muszę uruchomić bash
polecenie, aby uruchomić aliasy.
Próbowałem zmienić nazwę na .bash_profile
. To tylko pogorszyło sytuację, ponieważ nie ładowało się automatycznie, a także nie ładowało się, gdy działałem bash
ręcznie.
Jak mogę rozwiązać ten problem?
bashrc
.bash-profile
mingw
KurToMe
źródło
źródło
Odpowiedzi:
bash
prawdopodobnie zaczyna się jako powłoka logowania, w którym to przypadku nie czyta się.bashrc
automatycznie. Zamiast tego czyta.bash_profile
. Z podręcznika Bash :Podsumowując, utwórz
.bash_profile
plik w swoim katalogu głównym i dodaj wiersz cytowany powyżej.Jeśli
bash
faktycznie wywołujesz jakosh
, musisz użyć.profile
zamiast tego.bash_profile
(zobacz sekcję „Wywołane z nazwą sh” linku do instrukcji Bash powyżej).źródło
.bash_rc
w pytaniu, ale miałem na myśli.bash_profile
.[ -f ~/.bashrc ] && . ~/.bashrc
Korzystam z systemu Windows XP i miałem ten sam problem. Znalazłem HOWTO Tworzenie środowiska kompilacji MSYS .
Oto ważna linia:
Aby pomóc zidentyfikować kompilację środowiska wykonawczego i bieżący katalog roboczy, do
~/.profile
pliku można dodać następujące elementy .W powłoce MinGW stworzyłem
.profile
:Użyłem Notepad ++ do edycji jako plik tekstowy w formacie Unix o nazwie
.profile
i zapisałem go w moim katalogu domowym,C:\MinGW\msys\1.0\home\Your_Username_Here\.profile
Następnie dodałem swój alias i zapisałem:
Następnie uruchomiłem skrót MinGW Shell z mojego menu startowego i hurra, zadziałało! nano bez zawijania tekstu.
Mam nadzieję, że to Ci pomoże.
źródło
Nie znalazłem .bash_profile do pracy dla mnie (nie był czytany), więc podjąłem podejście .profile i umieściłem w nim:
To zastępuje moją obecną powłokę nowym początkiem bash, który odczytuje mój .bashrc
Myślę, że użycie .profile sugeruje, że sh jest używany podczas logowania, a nie bash.
źródło
Dla mnie dla MINGW zainstalowanego z GIT działało: włożono .bash_profile
C:\Users\[user_name]
Jest to także katalog, w którym ~ wskazuje w powłoce (pwd).
Właśnie tak :)
źródło
Wzdłuż linii @Koshmarr, ale nieco inny. Mój
mingw64
pobrany z git-scm.com załadowałby się/c/Users/[user-name]
przy starcie. Ale mój domowy dysk (znaleziony przezcd ~
) był w środku/h/
. Włożyłem.bashrc
i.bash_profile
do~
napędu i wszystko działało.W
.bash_profile
:Po prostu dowiedz się, gdzie MINGW uważa dom i umieść go
.bash_profile
tam.źródło
Jak skonfigurować pliki inicjujące MSYS Bash
W systemie operacyjnym Windows sposób wskazywania plików inicjujących używanych przez Bash (tj. Profil, profil_bash, bashrc) jest inny niż w systemie Linux.
Różnica między systemem operacyjnym Windows a Linux polega na ich strukturze systemu plików, co prowadzi do różnic w lokalizacji plików Bash i konwencjach nazewnictwa plików.
Jak skonfigurować pliki inicjujące MSYS Bash (tj. Profil, profil_bash i bashrc)
1) W systemie WINOS otwórz folder „etc” znajdujący się tutaj „C: \ msys \ 1.0 \ etc \”. Uwaga. powinieneś zobaczyć plik „profil” w folderze „etc”.
2) Zapisz plik bez rozszerzenia pliku (tzn. Podczas zapisywania ustaw typ zapisu jako „.all files”) o nazwie pliku „.bash_profile” na „C: \ msys \ 1.0 \ home \ USERNAME”. Uwaga. przed nazwą pliku znajduje się kropka (np. „.bash_profile”), jak można się spodziewać po instalacji Bash w systemie Linux OS
2) Zapisz plik bez rozszerzenia pliku (tzn. Podczas zapisywania ustaw typ zapisu jako „.all files”) o nazwie pliku „.bashrc” na „C: \ msys \ 1.0 \ home \ USERNAME”. Uwaga. przed nazwą pliku znajduje się kropka (np. „.bash_profile”), jak można się spodziewać po instalacji Bash w systemie Linux OS
4) Otwórz plik „profilu” w edytorze tekstu (wysublimowany tekst x jest dobry) Uwaga: Lokalizacja pliku „profilu” to „C: \ msys \ 1.0 \ etc \”
W pliku „profilu” przewiń do wiersza tekstu na końcu pliku (tj. Przewiń w dół), powinieneś zobaczyć linię testu wskazującą, że Bash zmienił swój bieżący katalog na HOME (w MSYS, HOME jest zdefiniowane w plik „profilu”)
5) Przed wierszem z tekstem „CD $ HOME” skopiuj następujący kod - dodanie tego skryptu w „profilu” poinformuje MSYS bash o uruchomieniu pliku bash_profile # ---------------- -------------------------------------------------- --------- # zmodyfikowany POCZĄTEK
6) Otwórz plik „bash_profile” w edytorze tekstów ( Sublime Text x jest dobry) i koniec pliku (na dole pliku)
7) Skopiuj następujący kod na końcu pliku - dodanie tego skryptu w pliku „.bash_profile” powie Bashowi uruchomienie „.bashrc”
# ------------------------------------------------- --------------------------
8) OK, teraz napiszmy mały skrypt wewnątrz „.bashrc”, aby sprawdzić, czy „profil” wywołuje „bash_profile” i czy „bash_profile” wywołuje „.bashrc”.
8.1) Pomyśl o nazwie polecenia, które chcesz utworzyć. Użyjmy słowa „t”, aby oznaczać test
8.2) Otwórz terminal Bash i wpisz „t”. Bash powinien odpowiedzieć „t: polecenie nie znaleziono” - jeśli nie mówi „t: polecenie nie znaleziono”, powtarzaj 8.1 i 8.2, dopóki nazwa polecenia nie powie „polecenie nie znaleziono”. Nie chcesz aliasu nazwy polecenia przypisanej do bash BAD !, więc musi to być „polecenie nie znaleziono”
8.3) OK, „t” dał mi „t: polecenie nie znaleziono”. Teraz napiszmy skrypt do „.bashrc”
8.4) Pisz „.bashrc”
8.5) Zapisz plik „.bashrc” w „C: \ msys \ 1.0 \ home \ NAZWA UŻYTKOWNIKA”
9) Prawie tam. Teraz uruchom ponownie terminal Bash i upewnij się, że zamknąłeś wszystkie wcześniej otwarte terminale Bash
10) Wpisz terminal „t”. Powinien odpowiedzieć „zdany test”. Jeśli nie, dokładnie sprawdź, czy kod został poprawnie napisany (zacznij od sprawdzenia cudzysłowów)
Niektóre uwagi 1) „nazwa pliku źródłowego” jest taka sama jak „. Nazwa pliku'
2) Podwójne cudzysłowy pozwalają na zastąpienie zmiennych zawartością pojedynczych cudzysłowów
3) $ HOME to / home / USERNAME tak samo jak ~ is / home / USERNAME
4) Funkcja jest zawsze preferowana nad aliasem 2
Aby uzyskać więcej informacji, patrz dokumentacja BASH
Jestem nowy w Bash. Więc nie ma gwarancji, że zrobiłem to najlepiej.
Powodzenia!
źródło