Kazoo Napisano Czerwiec 21, 2021 Zgłoszenie Share Napisano Czerwiec 21, 2021 Cześć. Piszę do Was z prośbą o pomoc. Postanowiłem na stare lata uczyć się Linuxa. Kompletnie nie znając środowiska, wykupiłem proste , podstawowe kursy, które przerabiam po kolei. Natknąłem na pewien problem. Na jednej z lekcji ww. kursu tworzyliśmy nowe aliasy i zmienne, które po wprowadzeniu do pliku .bash_profile powinny się odpalać. Okazuje się, że owe aliasy nie "zapisują się" przy przelogowaniu. korzystając z komendy echo $parament dostaje wynik pusty. Rozumiem, że moja główna sesja nie korzysta z pliku .bash_profile ? A może korzysta z niego w innym miejscu ? Próbowałem wyeksportować zapisane ścieżki, aliasy lub paramenty ale nadal otrzymuję puste wyniki. W jaki sposób rozgryźć ten temat ? Z góry dziękuję i pozdrawiam. Adam Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
@sunrise Napisano Czerwiec 21, 2021 Zgłoszenie Share Napisano Czerwiec 21, 2021 Aliasy powinny być umieszczane w .bashrc Poza tym, dobrze by było gdybyś podał jakie polecenia wprowadzasz i jakie wyniki otrzymujesz, to by ułatwiło odpowiedzi. Jeżeli znasz Angielski to może pomoże Ci ta książka o Bashu z tej strony. Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
SeeM Napisano Czerwiec 22, 2021 Zgłoszenie Share Napisano Czerwiec 22, 2021 Przykładowa linijka do .bashrc: alias 'dir'='ls --group-directories-first -alhv' Też jestem ciekawy jakie aliasy sobie tworzysz. Mam ich u siebie całkiem sporo. Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
tomcio Napisano Czerwiec 22, 2021 Zgłoszenie Share Napisano Czerwiec 22, 2021 Ja tylko dodam, że o ile nie zamierzasz tworzyć jakiejś customowej i rozbudowanej konfiguracji to .bashrc jest najlepszym miejscem do trzymania zmiennych, aliasów i funkcji. Ale nic nie stoi na przeszkodzie, żeby trzymać je w dowolnym innym pliku – wystarczy w .bashrc dopisać odpowiednią funkcję ładującą ten plik, coś takiego: if [ -f /ścieżka/do/pliku ]; then . /ścieżka/do/pliku fi No i nie ma potrzeby przelogowywania się po każdej zmianie (nie tylko w .bashrc, ale w dowolnym pliku), wystarczy zaimportować plik: source ~/.bashrc Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
Kazoo Napisano Czerwiec 22, 2021 Autor Zgłoszenie Share Napisano Czerwiec 22, 2021 Hmm. W kursie, w którym pracujemy na Fedorze (znaczy my. Zwykły kurs z Udemy), prowadzący wprowadza zmiany w .bash_profile. Jeżeli zmiany wprowadza się w .bashrc to skąd ta różnica ? Czym jest .bash_profile ? Wiecie, póki co idę ślepo krok po kroku i gdy występują problemy, zaczynam coś dłubać. Nie robię jakiś wysublimowanych aliasów. 4 godziny temu, SeeM napisał: Przykładowa linijka do .bashrc: alias 'dir'='ls --group-directories-first -alhv' Też jestem ciekawy jakie aliasy sobie tworzysz. Mam ich u siebie całkiem sporo. Nie wrzucam nic ciekawego. Proste dwie linijki by nauczyć się jak to działa. 1 godzinę temu, tomcio napisał: Ja tylko dodam, że o ile nie zamierzasz tworzyć jakiejś customowej i rozbudowanej konfiguracji to .bashrc jest najlepszym miejscem do trzymania zmiennych, aliasów i funkcji. Ale nic nie stoi na przeszkodzie, żeby trzymać je w dowolnym innym pliku – wystarczy w .bashrc dopisać odpowiednią funkcję ładującą ten plik, coś takiego: if [ -f /ścieżka/do/pliku ]; then . /ścieżka/do/pliku fi No i nie ma potrzeby przelogowywania się po każdej zmianie (nie tylko w .bashrc, ale w dowolnym pliku), wystarczy zaimportować plik: source ~/.bashrc Zauważyłem, żę ta komenda również widnieje w .bash_profile jednak funkcje nie działają Wrzucam Was screena z pliku.bash_profile edytowany pod vim. Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
@sunrise Napisano Czerwiec 22, 2021 Zgłoszenie Share Napisano Czerwiec 22, 2021 W skrócie .bash_profile jest wczytywany tylko przy logowani .bashrc za każdym razem gdy wywoływany jest bash (więcej informacji). Gdy dodasz coś do .bashrc (alias, zmienne czy cokolwiek innego) musisz go ponownie wczytaś , możesz to wykonać (jak wspomniał tomcio) za pomocą polecenia source .bashrc lub uruchomić nową powłokę wykonując po prostu polecenie bash. Może taki filmik Ci pomoże zrozumieć o co chodzi. 1 Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
Kazoo Napisano Czerwiec 23, 2021 Autor Zgłoszenie Share Napisano Czerwiec 23, 2021 Szalenie Wam dziękuję. Jestem zachwycony Waszą pomocą. @sunrise dziękuję Ci, że poświęciłeś czas by nagrać dla mnie filmik. Mocno mi pomógł. Pozdrawiam Adam 1 Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
Rekomendowane odpowiedzi
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto
Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.
Zarejestruj nowe konto
Załóż nowe konto. To bardzo proste!
Zarejestruj sięZaloguj się
Posiadasz już konto? Zaloguj się poniżej.
Zaloguj się