Как найти одну запись в истории Bash [дубликат]

Посмотрите журнал изменений:

rpm -q --changelog самба | grep -i cve

0
03.02.2019, 15:52
5 ответов

Нажмите CTRL+Rи начните печатать. Нажмите CTRL+Rеще раз, чтобы получить следующее найденное.

6
28.01.2020, 02:13

Вместо того, чтобы нажимать Стрелку вверх ровно nраз, вы должны использовать

!-n

в оболочке.

Это вызовет средство расширения истории оболочки bashи заменит расширение командой nна шаг назад в истории (и выполнит ее ).

Пример:

$ history
    1  ls
    2  ls
    3  ls
    4  history
    5  echo hello
    6  echo good night
    7  history
$ !-3
echo hello
hello

См. раздел «РАСШИРЕНИЕ ИСТОРИИ» в руководстве bash.

1
28.01.2020, 02:13

Вы можете использовать команду ниже, чтобы найти в.bash _файл истории

sed -n '/commandwhichyouwanttosearch/p' bash.history

пример

Предположим, вы хотите найти команду ls в истории.bash _

history | sed -n '/ls/p'
2
28.01.2020, 02:13

history + grep (или любая другая команда текстового поиска)

Если вы хотите просмотреть все записи истории, содержащие строку «foo» :history | grep "foo"

history-показывает все команды в буфере истории

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


Назад i -поиск

Если вы хотите вернуться назад по истории (, как вы это делали раньше с помощью клавиш со стрелками ), используйте ctrl+r. Просто нажмите ctrl+r и начните печатать. Вы можете нажать ctrl+r несколько раз, когда фраза уже введена, и она будет повторяться через соответствующие записи истории


Нечеткий поиск

Это мое личное предпочтение. Его решение не является ванильным из коробки, но я думаю, что оно заслуживает уважения. Вы можете установить расширение fuzzy finder для bash, и оно сделает поиск многих вещей намного более эффективным (оно заменяет обратный i -поиск, поэтому ctrl+r используется как ярлык для поиска в истории ).

1
28.01.2020, 02:13

Этот еще не упоминался.

!start-of-command

напр.

echo hello
ls
!echo
#finds echo hello
2
28.01.2020, 02:13

Теги

Похожие вопросы