Как автоматически ввести часть команды после выполнения другой команды?

Я хочу создать функцию для просмотра истории моей командной строки с помощью history | grep {keyword}. И после просмотра списка и выбора команды по номеру строки я хочу выполнить ее по !{line_number}.

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

1
задан 28 September 2014 в 15:43

1 ответ

Если как я Вы установили HISTSIZE значение к 10 000 +, вывод эти grep, команда могла быть довольно большой для парсинга.

Вместо этого я предложил бы использовать reverse-i-search и i-search функции удара:

reverse-search-history ( Ctrl + r )

Поиск, назад запускающийся в текущей строке и перемещающийся ‘up’ через историю по мере необходимости. Это - возрастающий поиск.

forward-search-history ( Ctrl + s )

Поиск, вперед запускающийся в текущей строке и перемещающийся ‘down’ через история по мере необходимости. Это - возрастающий поиск.

Примечание, что для работы правильно Вам, вероятно, придется отключить управление потоком XON/XOFF, просто вводит: stty -ixon

enter image description here

Источник: Неспособный передать поисковую историю Bash так же как с CTRL-r

0
ответ дан 28 September 2014 в 15:43

Другие вопросы по тегам:

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