История ввода команд в Linux

Запускаем и ищем предыдущие команды в Linux

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

 Повторный запуск команды без указания аргументов. Используем «!»

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

Предположим, мы выполняем какие-нибудь команды и дополняем их аргументами. Например, мы решили отредактировать файл myfile.txt в текстовом редакторе nano. Для этого мы выполняем:

nano /home/user/files/myfile.txt

Далее мы можем выполнять еще какие-нибудь команды, затем снова хотим выполнить nano, чтобы открыть в нем файл myfile.txt. Мы можем воспользоваться знаком !. Для этого достаточно написать восклицательный знак и без пробела название команды:

!nano

В результате будет вызвана команда nano с теми аргументами, с которыми она вызвалась последний раз, то есть в нашем случае !nano будет аналогично вызову nano /home/user/files/myfile.txt.

Выполнение предыдущей команды. Используем «!!»

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

Например, вы вызвали команду:

apt install apache2

И забыли написать в начале sudo. Чтобы не перепечатывать всю команду, можно выполнить:

sudo !!

Отмечу, что !! можно использовать прямо внутри текста команды. Например, мы перейдем в домашнюю директорию пользователя user:

cd /home/user

А теперь войдем в папку /home/user/share вот таким образом:

!!/share

Поиск по истории команд. Команда history

history — поиск по истории команд — предназначена для вывода истории команд, поиска по ним и быстрого запуска предыдущих команд.

Если мы выполним history, то на экран будет выведен список последних введенных вами команд:

history
...
405 sudo mc
406 sudo apt install apache2
407 clear
408 cd /home/user

Каждая команда пронумерована. Чтобы вызвать какую-нибудь команду из списка достаточно выполнить в командной строке: !номер. Например выполним команду под номером 407:

!407

Можно указать номер с минусом. Например, выполнив !-2 мы выполним пред-предыдущую команду. Выполнив, !-1 мы выполним предыдущую команду, это эквивалентно команде !!, описанной выше.

Для поиска по истории можно воспользоваться например утилитой grep и текстовым редактором gedit:

history | grep gedit

У команды history есть еще несколько дополнительных возможностей. Почитать руководство по history можно, выполнив man history.

Поиск по истории. Сочетание клавиш Ctrl+R

Ctrl+R — сочетание клавиш, которое используется для вызова «интерактивного» поиска по истории команд.

Нажмите Ctrl+R, находясь в командной строке. В результате на экране отобразится приглашение к поиску команды:

(reverse-i-search)`':

Начинайте вводить начальную часть или середину команды, которую вы ищете. То, что вы вводите будет заключено в кавычки, а после значка двоеточия вам будет предложена команда, найденная в истории команд, которая максимально удовлетворяет поиску. Например, я нажал Ctrl+R и начал вводить cl, и нашлась команда, содержащая символы cl:

(reverse-i-search)`cl': clear
История ввода команд в Linux
5 (100%) 1 vote

Оставить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *