Как получить последние N команд из истории?

Учитывая, что grep с пустым шаблоном '' соответствует каждой строке, вы всегда можете использовать его без тестирования:

h(){ 
    history | grep "$1" | tail -n $(($(tput lines)-1))
}
38
30.06.2015, 01:37
3 ответа

Протестировано в OpenBSD 6.3 (PD KSH v5.2.14 99/07/13.2 ).

history [b]

Показывает всю историю, начиная с записи с номером [b]

history [b] [e]

Показывает интервал истории от [b] до [e]

0
27.01.2020, 19:36

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

alias hs=' history 16 | head -n 15'

(сама командаhistory 16 | head -n 15)

Еще один полезный исторический псевдоним:

  alias hsg=' history | grep ' 

(когда ctr+R слишком мало для выбора)

Пробел перед _история запускает команду, не записанную в истории

fc -l #также будет список 16 последних команд (и более)

2
27.01.2020, 19:36

Вы также можете использовать отрицательные числа, например:

history -1

Или используйте диапазон (последние 10):

history -1 -11 
6
27.01.2020, 19:36

Теги

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