Що відбувається - FreeBSD та Linux використовують різні оболонки за замовчуванням. FreeBSD за замовчуванням tcsh , який мав кращі інтерактивні функції, ніж bash в минулому (але bash наздогнав), але помітно гірші функції сценарію .
Найпростішим способом отримати середовище, до якого ви звикли, було б переключити оболонку на tcsh в Linux. Якщо tcsh встановлено загальносистемно (якщо це не так, попросіть системного адміністратора встановити його), запустіть, chsh -s tcsh
щоб змінити стандартну оболонку.
Крім того, ви можете налаштувати bash для цієї команди, до якої ви звикли. За замовчуванням стрілки Upта Downстрілки переміщуються між усіма командами історії, а не лише тими, які починаються з введеного префікса. Щоб змінити це на поведінку, до якої ви звикли, .bashrc
введіть наступні рядки у файл ініціалізації bash, який знаходиться у вашому домашньому каталозі. Або запускайте . ~/.bashrc
або запускайте нову оболонку, щоб перечитати файл ініціалізації.
bind '"\eOA": history-search-backward'
bind '"\e[A": history-search-backward'
bind '"\eOB": history-search-forward'
bind '"\e[B": history-search-forward'
Послідовності евакуації - це те, що ваш термінал надсилає оболонці при натисканні клавіші зі стрілкою. Upможе бути \eOA
(втеча, O
, A
) або в \e[A
залежності від вашого терміналу, а так само для Down.
За замовчуванням bash пропонує різні прив'язки клавіш для пошуку історії команд. Ви можете натиснути Ctrl+ R, а потім ввести деякі символи для пошуку команди, що містить цю підрядку в будь-якому місці рядка. Натисніть Ctrl+, Sщоб перейти вперед замість назад. Пошук поступовий (тобто за вашим типом); Alt+ Pі Alt+ Nнадають вам некроковий пошук.
Замість bash та tcsh ви можете перейти на zsh, який має деякі акуратні риси, які не зустрічаються в інших оболонках . Zsh за замовчуванням має Ctrl+ Rі
Ctrl+ S, як bash. Щоб отримати Upі Downподобатися вам у tcsh, поставте наступні рядки ~/.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
Якщо ви хочете використовувати одну і ту ж оболонку скрізь, ви також можете використовувати bash або zsh на FreeBSD за умови встановлення порту (знову ж таки, запитайте свого системного адміністратора).