К основному контенту

Настройка bash терминала под себя

Сегодня, в очередной раз разбираясь с работой в консоли Линукс я решил, для удобства немного подредактировать свой файл .bashrc Данный фаил отвечает за то что выводится на экран во время нашей работы в bash. Вообще настроек в bash существует достаточно много и я ещё не со всеми разобрался, да и не все пока разбирал. Например я пока не разбирал цветную настройку консоли. А знаю что консоль можно разукрасить практически как новогоднюю Ёлку. Но всему своё время.

Изменений в файле ".bashrc" на сегодня я хоть и сделал не так и много, но это уже позволяет значительно упростить мою работу и обучение работе с консолью.

Файл ".bashrc" находится в нашей домашней директории вот здесь ~/.bashrc, как видите знак тильды указывает на то что фаил находится в Вашей домашней директории, как я это уже говорил ранее в статье, когда описывал команды для передвижения по директориям в системе Линукс, в консоли. Точка с которой начинается название файла говорит нам о том что файл скрыт. Дабы в него не лазили те кто совершенно ничего не понимают в своей операционной системе и не наделали в нем глупостей. Те же кто стремится к тому чтобы узнать о своей операционной системе больше, как и я, а так же быть не только пользователем в своей системе, но и иметь возможность сделать с неё все что угодно, всегда могут в него попасть и подредактировать. Конечно для этого необходимо знать что необходимо делать, но это уже такое, если человеку что-либо интересно со временем он узнает. Как говорится если ты что-либо делаешь один день, ты новичок. Если ты что-либо делаешь десять тысяч дней, ты уже мастер.

Что-то я в философию ударился, хорошо что когда-то было научился печатать в слепую и сейчас записываю практически с той же скоростью что и думаю. Давайте просмотрим в консоли, наш скрытый фаил. Для этого откроем его в консольном текстовом редакторе, в том который вы используете. Я лично использую консольный текстовый редактор vim, раньше потратил достаточно много времени на его изучение и мне в нем очень комфортно работать. Если он у вас установлен наберите в консоли.

vim ~/.bashrc

Если консольный текстовый редактор vim у вас не установлен, можете воспользоваться другими например vi, либо nano ну или любым другим. Например вот так 

vi ~/.bashrc

либо 

nano ~/.bashrc

Вот мы видим настройки с которыми работает наш bash, их мы и будем корректировать. )) Меня первый раз это слегка испугало, много всего и ничего непонятно. Затем немного почитал, ну и соответственно узнал немного больше. 

Первое что я решил исправить это то, что если открываешь окно терминала и вводишь какие-либо команды, а затем открываешь ещё одно окно и тоже вводишь команды. То в истории команд второго терминала, не будут находится команды которые мы только что вводили в первом терминале. Так же если вы закроете терминал, в котором первом работали, а затем второй открытый, то все команды первого терминала потеряются. Мне лично это не нравится и это я исправил прежде всего.

Вводим вот такие строки, для того чтобы в историю вписывались все команды

shopt -s histappend
PROMT_COMMAND='history -a'

Далее увеличиваем размер истории команд терминала. Для этого находим такую строку. Различаться она может лишь цифрами.

HISTSIZE=500

Пятьсот команд в истории чрезвычайно мало. Меняем цифру 500 на 10000. Будет выглядеть вот так.

HISTSIZE=10000

Далее говорим терминалу чтобы не вносил в историю копии команд. Для этого добавляем вот такую строку.

export HISTCONTROL=ignoredups

Делаем так, чтобы можно было переходить в каталог без написания команды cd, просто написав путь к каталогу. Чтобы это сделать необходимо добавить вот такую строку.

shopt -s autocd

Указываем системе чтобы исправляла мелкие ошибки, в написании путей к директориям, в аргументах к команде cd. Работоспособность особо не проверял, но насколько знаю работает лишь с командой cd. Как описывается может исправить ошибку например если Вы введете путь /ect/init.d вместо /etc/init.d Все равно думаю будет полезно.

shopt -s cdspell

Запрещаем выход из консоли если в ней есть выполняющиеся задания. Это временами бывает полезным.

shopt -s checkjobs

Указываем терминалу исправлять мелкие ошибки в написании имен директорий, при автодополнении.

shopt -s dirspell

Делаем возможным использование маски. Позволяет использовать конструкцию вида ** которая обозначает все файлы, начиная с текущего каталога. Очень полезно бывает для поиска определенных файлов. Например для того чтобы просмотреть все файлы в домашнем каталоге с расширением flv мне в домашнем каталоге достаточно набрать ls **/*.flv. Так же удобно находить и другие файлы. Например свою коллекцию музыки в mp3 формате.

shopt -s globstar

Вот и для начала все. То как показывать часы при запуске терминала и многое другое, я опишу в следующий раз. Как сам это окончу и решусь описать.

Комментарии

Популярные сообщения из этого блога

Перезагрузка Linux в чем разница reboot и shutdown -r now

Брат сегодня спросил, а в чем разница между командами в терминале reboot и shutdown -r now ? Ведь обе эти команды делают кажется одно и тоже. Перезагружают операционную систему. Для чего вводить shutdown -r now , если данная команда заметно длиннее??? На первый взгляд он конечно прав, обе команды действительно делают лишь то, что перезагружают операционную систему Linux. Разница состоит в том как эти команды выполняют перезагрузку. Команда shutdown -r now указывает операционной системе Linux перезагрузить систему сейчас, на что указывает конец данной команды, а именно now . Но на саму перезагрузку это конечно не влияет. Все дело в том что команда shutdown -r выполняет корректное завершение процесса работы. То есть ждёт необходимое для завершения работы программы время, а это может занять достаточно долгое время. Если же система вдруг по каким либо причинам подвисла, время это может растянутся на десятки минут или дольше что не всегда удобно. Команда же reboot просто посылает ком

Скачиваем deb-пакеты с зависимостями для offline-установки

Сегодня вот задумался над тем что же делать если доступа в интернет не будет, а понадобится установить какую-либо программу. Ведь программы в Linux Ubuntu устанавливаются из интернет-репозиториев. Кстати это работает и в Kubuntu, Lubuntu. Остальные не проверял. А как взять необходимые для установки deb-пакеты? Если на компьютере ещё нет интернета, хотя бы программу для подключения к интернету, например ту же программу wvdial. Чтобы можно было подключить например мой модем в консоли. Хоть я и разобрался как подключать 3g USB-модем при помощи pppd . Но а вдруг понадобится. Для того чтобы получить список интернет адресов где находятся наши deb-пакеты я использую программу apt-get , в виде команды apt-get --print-uris --yes здесь --print-uris возвращает URL адреса на экран. Для вывода данной команды права суперпользователя ненужны, так что sudo вводить Вам не понадобится. apt-get --print-uris --yes install wvdial Но чтобы отсеить результаты и оставить одни URL-адреса. Я использую