Dzieje się tak, że FreeBSD i Linux domyślnie używają różnych powłok. Domyślnym FreeBSD jest tcsh , który miał lepsze funkcje interaktywne niż bash w przeszłości (ale bash nadrobił zaległości), ale znacznie gorsze funkcje skryptowe .
Najprostszym sposobem na uzyskanie środowiska, do którego przywykłeś, byłoby przełączenie powłoki na tcsh w systemie Linux. Pod warunkiem, że tcsh jest zainstalowany w całym systemie (jeśli nie jest, poproś administratora systemu o zainstalowanie go), uruchom, chsh -s tcsh
aby zmienić domyślną powłokę.
Alternatywnie możesz skonfigurować bash, aby mieć to polecenie, do którego jesteś przyzwyczajony. Domyślnie strzałki Upi Downporuszają się między wszystkimi poleceniami w historii, a nie tylko tymi, które zaczynają się od wpisanego prefiksu. Aby zmienić to na zachowanie, do którego jesteś przyzwyczajony, umieść następujące wiersze w pliku inicjującym bash, który znajduje się .bashrc
w twoim katalogu domowym. Albo uruchomić . ~/.bashrc
lub uruchomić nową powłokę do ponownego odczytania pliku inicjalizacji.
bind '"\eOA": history-search-backward'
bind '"\e[A": history-search-backward'
bind '"\eOB": history-search-forward'
bind '"\e[B": history-search-forward'
Sekwencje specjalne są wysyłane przez terminal do powłoki po naciśnięciu klawisza strzałki. Upmoże być \eOA
(escape, O
, A
) lub \e[A
w zależności od terminala, a podobnie do Down.
Domyślnie bash oferuje różne powiązania klawiszy do przeszukiwania historii poleceń. Możesz nacisnąć Ctrl+ R, a następnie wprowadzić kilka znaków, aby wyszukać polecenie zawierające ten podciąg w dowolnym miejscu wiersza. Naciśnij Ctrl+, Saby przejść do przodu zamiast do tyłu. Wyszukiwanie jest przyrostowe (tzn. Podczas pisania); Alt+ Pi Alt+ Nzapewniają wyszukiwanie nie przyrostowe.
Zamiast bash i tcsh, możesz przełączyć się na zsh, który ma pewne fajne funkcje, których nie ma w innych powłokach . Zsh ma Ctrl+ Ri
Ctrl+ Sdomyślnie tak jak bash. Aby uzyskać Upi Downtak jak w tcsh, wstaw następujące wiersze ~/.zshrc
:
bindkey '\eOA' history-beginning-search-backward
bindkey '\e[A' history-beginning-search-backward
bindkey '\eOB' history-beginning-search-forward
bindkey '\e[B' history-beginning-search-forward
Jeśli chcesz wszędzie używać tej samej powłoki, możesz także użyć bash lub zsh na FreeBSD, pod warunkiem, że port jest zainstalowany (ponownie zapytaj administratora systemu).