LiNewb - Linux портал для начинающих: новости, анонсы, статьи, форум, FAQ по Linux.
LiNewb - Google поиск

Статьи, описания, мануалы » материал и комментарии


Поиск по разделу: 

Категории статей, описаний, мануалов

Мои статьи [0] О Linux в общем... [4]
Установка, обновление Linux [3] Сеть, Интернет [5]
Android [0] Графика [8]
Безопасность [1] Полезные советы [7]
Программы, утилиты [7] Игры, музыка, видео [1]
Прогр-ние: Web [1] Прогр-ние: Система, Приложения [0]
Разное [13]
Главная » Статьи » Полезные советы

Советы и подсказки по bash
Используя операционную систему Linux-семейства, вы вероятно используете и bash. По этой причине ниже я собрал несколько часто возникающих проблем с bash и простые способы их решения.

1. Потеря истории команд

Если открыть окно терминала и ввести несколько команд, а после открыть второе окно, то история команд bash во втором окне не будет содержать команд из первого. К тому же, если закрыть первый терминал, а затем второй, то история команд из первого терминала будет перезаписана вторым. Вдвойне неприятно!

Так происходит из-за того, что история команд записывается только при закрытии терминала, а не после каждой команды. Это можно исправить.

Для этого надо отредактировать файл .bashrc (начинающим: любой файл, начинающийся с точки, является скрытым - служит для хранения пользовательских настроек).

nano ~/.bashrc

sudo здесь не нужно, это файл пользователя, а не настройка системы. Мне нравится nano, но можно использовать любой редактор: gedit, kate, mousepad, vi или emacs

добавить строки

shopt -s histappend

PROMPT_COMMAND='history -a'

И сохранить. (Ctrl-O для записи. “^” означает клавишу “Ctrl” в nano и других программах. ^X для выхода)

Так история команд будет добавляться к старой, а не перезаписывать ее, и запись будет происходить каждый раз в момент отображения подсказки bash.

2. Глупые ошибки в написании

Добавьте

shopt -s cdspell

опять-таки в .bashrc. Таким образом ошибки в написании (например, ect вместо etc) будут исправляться.

3. Дубликаты в истории команд

Я часто набираю cd .. несколько раз подряд, и когда я нажимаю клавишу “вверх”, чтобы вернуться к ранее введенным командам, я не хочу, чтобы мне постоянно напоминали о моих неоптимальных передвижениях по файловой системе.

Добавьте

export HISTCONTROL="ignoredups"

опять таки к .bashrc.

Или даже лучше, добавьте

export HISTIGNORE="&:ls:[bf]g:exit"

Это позволит избавиться от дубликатов, а также от ls, bg, fg и exit, что сделает историю команд bash более читабельной.

4. Разорванные многострочные команды в истории команд


Добавьте

shopt -s cmdhist

в .bashrc, и многострочные команды будут записываться в одну строку, что облегчит редактирование.

5. Пара дополнительных советов от комментаторов

Нажмите Ctrl-R в bash, далее начните набирать команду. Так искать в истории команд гораздо быстрее, чем нажимать 300 раз “вверх”.

Также можно искать при помощи

history | grep "foo"

Команда

cd -

осуществляет возврат к последней посещенной директории - бывает полезно, когда нужно перейти куда-то чтобы что-то изменить, а затем быстро вернуться назад.

Нажатие “Esc”+”.” вызывает последний упомянутый объект. Например, если набрать cat /etc/apt/sources.list, а затем rm и нажать “Esc”+”.”, то команда будет автоматически завершена: rm /etc/apt/sources.list. Попробуйте!

Заключение

Вот несколько советов, как сделать историю команд bash удобней. Если у вас есть свои хитрости на этот счет, добавляйте в комментарии!

Источник http://linux-digg.ru/?p=11
 
     


Категория: Полезные советы | Добавил: linewber (09.12.2008)
Теги: советы, bash
Просмотров: 1820 | Рейтинг: 0.0/0
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]

Вход на сайт

Логин:
Пароль:

Нашли ошибку в тексте?

Система Orphus

Метки документов

Проект OpenNET 
Все зарегистрированные товарные знаки, находящиеся или отображаемые на страницах сайта //linewb.moy.su, принадлежат своим законным владельцам. Вся информация, полученная со сторонних источников, публикуется с обязательными ссылками на эти источники.