Czasami lubię mieć bardzo spersonalizowane aliasy bash i może skróty klawiszowe, kiedy wchodzę do folderu (może to być projekt, w którym jestem przyzwyczajony do pisania wielu poleceń z CLI).
Załóżmy, że kiedy wchodzę do folderu takiego jak „projectAlpha /”, oczekuję niestandardowych aliasów, takich jak:
alias doTaskX='./app arg1 arg2...|filter arg1 arg2...'
- ...
Co więcej, myślałem o:
- Wyświetl pomocny komunikat zawierający aliasy i popularne polecenia
- Wyświetlanie typowych niestandardowych skrótów klawiszowych dla mojego projektu
Ale jak tylko opuszczę katalog główny mojego projektu, ustawienia te stają się niedostępne.
Jakie jest obecnie najlepsze podejście?
Odpowiedzi:
Bash ma specjalną zmienną,
PROMPT_COMMAND
której zawartość jest wykonywana za każdym razem po wykonaniu polecenia, więc możesz ustawić ją w następujący sposób:Od teraz za każdym razem, gdy będziesz w tym
/tmp
katalogull
, tworzony będzie alias , a we wszystkich innych katalogach będzie on usuwany.Prawdopodobnie bardziej praktycznym rozwiązaniem jest zebranie wszystkich aliasów i innych elementów w jednej funkcji (powiedzmy
makealias
) i wszystkich niepodzielności w drugiej funkcji,makeunalias
które można uruchomić w zależności od potrzeb, coś w rodzajuZauważ, że przekierowanie stderr jest obecne tylko po to, aby zapobiec niektórym bezużytecznym w tym przypadku alertom.
źródło