Команда history
- это путь. Я использую
h ()
{
history | cut -f 2- | sort -u | grep -P --color=auto -e "$*"
}
, чтобы я мог напечатать что-то вроде h git.*MyProgram
, h ^tar -c
, h svn:ignore
и т. Д., Чтобы получить отсортированный список прошлых команд, соответствующих регулярному выражению.
Вы также можете добавить следующие строки в ~ / .inputrc:
# Ctrl+Up/Down for searching command history
"\e[1;5A": history-search-backward
"\e[1;5B": history-search-forward
Имея их, вы можете ввести частичный префикс команды (например, gi
или sql
), а затем использовать Ctrl + Up, чтобы прокрутить список только тех записей истории команд, которые соответствуют этому префиксу (например, git clone https://code.google.com/p/double-conversion/
и sqlite3 .svn/wc.db .tables
). Это может быть намного быстрее, чем поиск, а затем вырезание и вставка, если вы хотите отредактировать или повторно выполнить команду, которая была сравнительно недавно.