bind
- bind – wbudowane polecenie bash pozwalające przypisywać funkcje do sekwencji klawiszy i modyfikować zachowanie interfejsu linii poleceń.
- Służy do tworzenia własnych skrótów klawiszowych oraz zmiany domyślnych przypisań w readline (bibliotece obsługującej interaktywną linię poleceń).
- Dostępne we wszystkich wersjach bash oraz zsh (częściowo kompatybilne).
Składnia
Dział zatytułowany „Składnia”bind [opcje] [polecenie]
- W przypadku wywołania bez argumentów wypisuje aktualne przypisania.
- Pozwala przypisywać funkcje readline lub własne makra do określonych kombinacji klawiszy.
Parametry
Dział zatytułowany „Parametry”Parametr | Opis |
---|---|
-P | Wyświetla wszystkie dostępne funkcje readline z opisem. |
-p | Wypisuje aktualne przypisania klawiszy w postaci, którą można ponownie wykorzystać. |
-q | Wypisuje tylko przypisane funkcje. |
-l | Pokazuje listę wszystkich funkcji bash obsługiwanych przez readline. |
-f <plik> | Ładuje przypisania klawiszy z pliku. |
-x <klawisz>:<komenda> | Przypisuje własną komendę bash do sekwencji klawiszy. |
Przykłady użycia
Dział zatytułowany „Przykłady użycia”# Przykład 1: Wyświetlenie wszystkich funkcji readlinebind -P
# Przykład 2: Przypisanie Ctrl+G do wyczyszczenia ekranubind '"\C-g": clear-screen'
# Przykład 3: Przypisanie własnej funkcji do Ctrl+Obind -x '"\C-o": echo Hello from bind!'
# Przykład 4: Załadowanie przypisań z plikubind -f ~/.inputrc
- Makra vs polecenia:
bind
może przypisać zarówno funkcje readline (clear-screen
), jak i polecenia bash (echo
,ls
, etc.) za pomocą-x
. - Zasięg: przypisania obowiązują tylko dla bieżącej sesji, chyba że zostaną zapisane w pliku
~/.inputrc
. - Unikanie konfliktów: upewnij się, że nie nadpisujesz domyślnych skrótów bash (np.
Ctrl+C
,Ctrl+D
).
Najczęściej spotykane błędy i jak je naprawić
Dział zatytułowany „Najczęściej spotykane błędy i jak je naprawić”Błąd / Komunikat | Przyczyna | Rozwiązanie |
---|---|---|
bind: not found | Próba użycia bind poza bash | Upewnij się, że korzystasz z powłoki bash. |
invalid key sequence | Błędna składnia przypisania | Użyj poprawnej notacji escape, np. \C-x dla Ctrl+X. |
Przypisanie nie działa | Skrót jest nadpisywany lub błędnie zdefiniowany | Sprawdź konflikt z innym skrótem lub upewnij się, że nie ma literówki. |
Linki i źródła
Dział zatytułowany „Linki i źródła”- GNU Bash Manual – bind – oficjalna dokumentacja.
- Readline Manual – szczegóły funkcji i konfiguracji readline.