История команд в Linux или Учитесь использовать уже выполненное вами ранее

История команд в Linux или Учитесь использовать уже выполненное вами ранееРаботая в командной строке Linux, мы часто вводим какие-либо команды. Некоторые из них мы выполняем довольно редко, а некоторые каждый день.

Хорошую возможность не тратить время на набор одних и тех же команд подарили нам разработчики оболочки bash. Они предоставили возможность использовать историю команд. чтобы сократить время набора команд и сделать работу в командной строке более эффективной.

Сегодня мы поговорим о истории команд в Linux и научимся эффективно управлять ею.

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

Историю команд в Linux можно отключить, выполнив в командной строке команду:

$ set +o history

Если, после отключения истории команд, вы вновь захотите использовать ее в своей работе, просто выполните команду:

$ set — o history

Как вы знаете, ничего не бывает бесконечного, и размер истории команд в Linux не исключение. Одна из переменных окружения, имеющая название HISTSIZE. хранит в себе количество выполненных команд. По умолчанию, ее значение — 1000. но в некоторых дистрибутивах встречается и значение 500. Вы можете посмотреть значение переменной HISTSIZE в вашей системе, выполнив в командной строке следующую команду:

$ echo $HISTSIZE

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

Если вы хотите посмотреть все содержимое истории, выполните в командной строке команду:

Для того, чтобы показать последние 12 выполненных команд, выполните:

Может случиться так, что вы случайно, вместо команды, наберете свой пароль. Оставлять свой пароль где-либо — дурная примета и исправить вам это поможет команда:

$ history — d257

Она удалит строку 257 (предположим, что именно эта строка хранит случайно набранный вами пароль) из общего списка, хранящегося в истории команд .

Команда:

позволит повторить последнюю выполненную вами команду.

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

Если это будет двадцатая, с конца списка истории, команда, то вам поможет выполнение следующей команды:

Команду, выполненную ранее и начинающуюся с букв sud (многие догадались что это за команда?), вы можете повторить, используя следующую команду:

Будьте внимательны, если вы ранее выполняли какую-либо команду несколько раз, но использовали при выполнении разные ключи или опции.

К примеру, вы добавили в систему несколько пользователей и назначали им пароль. Но после ввода последнего пароля, вы решили изменить пароль одному из пользователей (предположим его логин andy). В этом случае вам поможет следующая реализация:

она позволит повторить команду passwd andy. выполненную вами ранее. Или, к примеру, выполненную ранее команду:

# less /var/log/messages | grep tty1

вам позволит повторить следующая команда:

# !?messages?

Работая с историей команд Linux, вы можете редактировать ее, используя для этого комбинации клавиш. Вот некоторые из них (приведен список основных комбинаций клавиш редактора Emacs):

Ctrl+f — перемещение вправо на один символ;

Ctrl+b — перемещение влево на один символ;

Ctrl+a (или клавиша Home) — перемещение на начало строки;

Ctrl+e (или клавиша End) — перемещение в конец строки;

Alt+f — перемещение на начало предыдущего слова;

Alt-b — перемещение на начало последующего слова;

Ctrl+ d (или клавиша Delete) — удаление символа, на котором стоит курсор;

Ctrl+k — удаление всех символов справа от курсора до конца строки с запоминанием удаленного для дальнейшего использования;

Alt+d — удаление символов справа от курсора до конца текущего слова с запоминанием удаленного для дальнейшего использования;

Ctrl+y — вставка удаленных символов и слов, удаленных при помощи двух предыдущих комбинаций.

Использование истории команд. на мой взгляд, крайне удобно в работе и помогает экономить время.

Понравилась статья? Оставайтесь со мной на Linuxway. ru. подписавшись на новые материалы сайта по RSS. Или просто добавьте статью в свои любимые закладки: