Как да редактирате файла BashRC, за да направите Bash по-полезен в Linux

Bash Shell е впечатляващ, но би трябвало да работи. В това ръководство ще разгледаме начините, по които можете да подобрите изживяването си в терминала, като модифицирате и подобрявате файла BashRC. Преди да редактирате файла BashRC, моля, изпълнете тази команда в терминала, за да го архивирате безопасно:

cp .bashrc bashrc-bak

Завършване на историята

Една от убийствените характеристики на алтернативата на Bash „Fish“ е способността й бързо да разберете какво пишете, докато го пишете. Тази функция прави супер лесно запомнянето на минали команди и операции с лекота. За съжаление, Bash не може да направи това извън кутията и ако искате да запомните команда, вие сте заседнали да преглеждате файла с историята – досега.

Както се оказва, има начин да имитирате тази страхотна функция Fish в Bash с проста редакция на BashRC. Отворете файла с Nano и добавете следното, за да активирате бързо търсене в историята;

nano ~/.bashrc

Вътре във вашия BashRC файл потърсете „#User специфични псевдоними и функции“ и поставете следния код под него. Имайте предвид, че много дистрибуции на Linux персонализират файла BashRC, така че може да не намерите този ред. Най-общо казано, кодът трябва да отиде в дъното на файла.

bind '"e[A": history-search-backward'
bind '"e[B": history-search-forward'

Кодът по-горе ще обвърже способността за бързо преминаване през историята на Bash, като щракнете върху клавишите със стрелка наляво или надясно на клавиатурата. Натиснете Ctrl + O, за да запазите, и Ctrl + X, за да излезете. Затворете терминала и го отворете отново, за да видите промените, които сте направили.

  Как да инсталирате темата Plano GTK на Linux

По-добро регистриране на историята

Подобно на повечето терминални обвивки, Bash запазва файл с всичко, което въвеждате в него за удобство. Това със сигурност е полезна функция, но става досадно сортирането на файла поради дублирания. Показването на една и съща команда отново и отново може да затрудни намирането на нещата в историята на Bash, които искате да видите. За да разрешите този проблем, помислете за добавяне на тази редакция към ~/.bashrc, която активно премахва дублиращи се команди, подобрявайки начина, по който Bash обработва историята на командите.

nano ~/.bashrc

Вътре в Nano поставете този код:

export HISTCONTROL=ignoredups

Помощ за команди, подобна на Zsh

В Zsh обвивката е лесно да отворите ръководството на всяка терминална команда чрез бързо натискане на Alt + H на клавиатурата. С Bash достъпът до ръководство е команда от човек. Достатъчно е да се каже, че Zsh начинът за правене на нещата е много, много по-приятен. За да добавите тази функционалност към обвивката на Bash, добавете я в долната част на ~/.bashrc.

bind '"eh": "C-aebedC-ye#man C-yC-mC-pC-pC-aC-dC-e"'

Автоматичен CD

Една отлична функция, която Zsh има е възможността автоматично да поставя компактдиск в директория. Вместо да извиквате cd някаква директория през цялото време. Въпреки че използването на командата CD вътре в Bash със сигурност не е трудно, може да е досадно да я пишете отново и отново, за да навигирате навсякъде.

  Как да превърнете уебсайтовете в приложения за Linux с уеб каталог

Отворете вашия ~/.bashrc файл с Nano и поставете този код вътре в него.

...
shopt -s autocd
...

Запазете редакцията с Nano, като натиснете Ctrl + O, и излезте от редактора с Ctrl + X. Затворете терминала и го отворете отново. Оттук нататък, за да преминете към нова директория, въведете пътя към папката без компактдиска пред него. Например:

/usr/bin/

Подобрете завършването на раздели

Една от най-добрите функции на Bash, за която много потребители не знаят, е завършването на раздели. По подразбиране Bash може автоматично да завърши команда. За да го използвате, започнете да пишете първите няколко букви от команда, директория и т.н., а Bash ще попълни останалите. Проблемът е, че тази версия на завършване на раздели се нуждае от работа. Не е идеално, липсват му неща и понякога категорично отказва да работи.

  Как да използвате командата chgrp в Linux

За щастие има бърз начин да подобрите завършването на раздели за Bash. За разлика от други редакции в ръководството, този раздел е доста лесен и изисква само инсталиране на пакет. Отворете терминал и инсталирайте пакета bash-completion.

Ubuntu

sudo apt install bash-completion

Debian

sudo apt install bash-completion

Arch Linux

sudo pacman -S bash-completion

Fedora

sudo dnf install bash-completion

OpenSUSE

sudo zypper install bash-completion

Нулиране на BashRC

В това ръководство направихме много промени във файла ~/.bashrc. В резултат на това вашият Bash терминал работи по различен начин. Тези модификации несъмнено правят Bash по-модерен и полезен, но не за всеки. Някои може да предпочетат начина, по който Bash работи без модификациите.

За щастие, в началото на това ръководство създадохме резервно копие на оригиналния файл ~/.bashrc. Създаването на резервно копие прави отмяната на редакциите, направени в този урок, много лесна. За да възстановите архива, отворете терминал и започнете с изтриване на новия файл ~/.bashrc.

rm ~/.bashrc

След като се отървете от модифицирания файл, е безопасно да възстановите стария архив.

cp bashrc-bak .bashrc

Изпълнението на тази CP команда ще възстанови файла в първоначалното му състояние. Рестартирайте компютъра си, за да финализирате промените.