Oto, co zanotowałem po moim wykładzie:
- Znajdź plik
.bashrc
w swoim katalogu domowym - zrobić
vi .bashrc
- Po umieszczeniu gdzieś folderu aplikacji upewnij się, że jego adres znajduje się w zmiennej ścieżki.
Problem polega na tym, że nie mam .bashrc
pliku w moim katalogu domowym. W .bash_history
moim domu jest tylko plik.
Jeśli przejdę do katalogu głównego, tam jest etc/bash.bashrc
plik, ale myślę, że wprowadzi zmiany dla wszystkich użytkowników, a nie tylko dla mnie. Chcę dodać tę ścieżkę tylko dla siebie. Nie powinno to wpływać na innych. Również $PATH
w tym pliku bashrc nie ma żadnej zmiennej, więc jestem jeszcze bardziej zdezorientowany.
~/data/user1/bin
folderze. Dodałem tę ścieżkę do pliku .bashrc. Co mam teraz zrobić, aby po wpisaniu lego uruchomić oprogramowanie? Czy muszę skonfigurować alias? Jeśli tak to jak?alias lego='<What do i put here???>'
~/data/user1/bin
do swojej zmiennej środowiskowej PATH w.bashrc
pliku? (dodaj ten wierszexport PATH=$PATH:~/data/user1/bin
:) - jeśli tak, powinieneś być w stanie po prostu wpisaćlego
terminal, a program powinien się uruchomić.PATH=$PATH:~/data/user1/bin
. Nie wspomniałeś o eksporcie, więc go tam nie umieściłem. Spróbuję ponownie jutro, kiedy idę do Uni.lego
to słowo uruchamia oprogramowanie?Większość dystrybucji zawiera standardowy
.bashrc
plik,/etc/skel/
który można po prostu skopiować do katalogu domowego. W przeciwnym razie możesz po prostu utworzyć nowy pusty.bashrc
plik w swoim katalogu domowym.źródło
Utwórz własny plik startowy dla interaktywnych powłok
Informacje o plikach startowych Bash
Z sekcji ZAPROSZENIE
man 1 bash
mówi:Pamiętaj, że te pliki startowe są opcjonalne ; Bash ich nie wymaga. Bash rozróżnia również powłoki logowania i powłoki interaktywne. Interaktywna powłoka jest zdefiniowana w następujący sposób:
Wiele dystrybucji pobiera jeden typ pliku startowego od drugiego, ale niektóre nie, więc problem ten może być trudny do rozwiązania kanonicznego. Musisz sprawdzić wszystkie pliki startowe, aby zobaczyć, jak i kiedy
~/.bashrc
zostaniesz przywołany swoim systemie.Tworzenie interaktywnego pliku startowego powłoki dla użytkownika
Jeśli po prostu brakuje
~/.bashrc
pliku specyficznego dla użytkownika, po prostu utwórz go. Zostanie to wywołane przez Bash dla powłok niezalogowanych (np. Powłoki uruchomione bez--login
flagi) lub za każdym razem, gdy wymusisz interaktywność powłoki poprzez wywołanie jej z-i
flagą.źródło
Jeśli nie masz
.bashrc
, możesz go po prostu utworzyć i dodać do niego wiersze, takie jak:aby dodać katalog bin użytkownika na końcu ścieżki.
Należy jednak zachować ostrożność, jeśli istnieją inne pliki startowe. Reguły dotyczące wykorzystywania plików są dość złożone, ale wyszczególniono je na
bash
stronie man. Wpiszman bash
w wierszu polecenia i poszukajINVOCATION
.źródło
Krótkie odpowiedzi:
find ~ -maxdepth 1 -name '.bashrc'
vi ~/.bashrc
echo $PATH | grep ~/MyNewCoolProgramFolder
Szczegółowy:
Przyjmuję bliższą dosłowną interpretację.
„Znajdź plik .bashrc w swoim katalogu domowym”.
Ponieważ istnieje polecenie
find
, być może zdradziecki edytor sugeruje, abyś go używał:Szukaj w katalogu domowym
~
, zejdź tylko o jeden poziom (bez podkatalogu-maxdepth 1
). Dla wszystkich opcji napiszman find
.Linia poniżej wykona minimalną pracę
Uwaga: Jeśli
~/.bashrc
nie istnieje , możesz go utworzyć za pomocą prostegoecho >> ~/.bashrc
.Plik
>>
zostanie utworzony, jeśli nie istnieje. Jeśli~/.bashrc
zamiast tego istnieje, dołącza tylko nieszkodliwe wyjście pustegoecho
, unikając niezamierzonego usunięcia tak krytycznego pliku, który zresztą trudno przywrócić bez kopii zapasowej.(Następuje to, ponieważ rzadko muszę szanować znaczenie mojego pseudonimu, nie wykonuj, jeśli masz wątpliwości).
„Zrób
vi .bashrc
”Teraz możesz to zrobić
vi ~/.bashrc
, pułapką jest to, że musisz nacisnąć:iqwyjść!Folder aplikacji i
$PATH
podczas tworzenia folderu aplikacji, np
~/MyNewCoolProgramFolder
. Poniższy wiersz sprawdzi tylko, czy znajduje się w$PATH
:Nie musisz dodawać, jeśli już tam jest. W razie potrzeby można dodać do
$PATH
zi dodaj tę linię,
~/.bashrc
jeśli chcesz, aby była stała.„4?!? Jak 4, jeśli były tylko 3 punkty?” - Obejścia.
Istnieje kilka obejść tego drugiego; załóżmy, że plik wykonywalny o nazwie
CoolDetraveller
istnieje tylko w nowym folderze aplikacji:(a) Możesz spróbować go wykonać. Po prostu nie uruchomi się, jeśli nie ma go w
$PATH
.(b) Możesz wypróbować jego automatyczne uzupełnianie . Zacznij pisać
CoolDetravelle
i naciśnij Tab. Jeśli jest w$PATH
, będzie ono automatycznie uzupełniane (zawsze, jeśli włączone jest automatyczne uzupełnianie).(c) Możesz poprosić o
which
użycie polecenia powłoki bash, jeśli napiszesz polecenieCoolDetraveller
.Uwaga: Jeśli w ścieżce aplikacji istnieje jeden lub więcej obszarów,
which
może być w stanie znaleźćCoolDetraveller
, choć (tutaj czczę moje imię znowu) na zakończenie auto oCoolDetraveller
tak ważny parametrwhich
komendy będą działać!Ad nauseam : Nie możesz zapytać,
whereis CoolDetraveller
ponieważwhereis
źródło