Как найти историю команд оболочки с помощью текстового редактора?
Я знаю, что Ctrl+R позволяет вам искать историю команд, но это немного примитивно. Есть ли способ экспортировать всю мою историю команд (не только текущий сеанс терминала, но и полную историю) в текстовый файл? Затем я мог бы использовать текстовый редактор для удобного поиска. Или, если файл истории уже существует, где он находится?
3 ответа
От man bash:
HISTFILE
The name of the file in which command history is saved.
The default value is ~/.bash_history.
If unset, the command history is not saved when a shell exits.
Итак, переменная HISTFILE будет содержать имя файла, где будет сохранена история.
$ echo "$HISTFILE"
/home/user/.bash_history
Теперь вы можете искать шаблон:
$ grep "vim" "$HISTFILE"
vim foo.text
vim bar.text
vim file.txt
Как указал @Dennis, если хочешь, можешь бежать history -a добавить историю команд запущенного сеанса в $HISTFILE файл. Как правило, команды будут автоматически добавлены после закрытия сеанса, history -a будет делать то же самое прямо в этот момент.
Бежать help history чтобы получить больше идей о history встроенный сам.
История Bash сохраняется в вашем домашнем каталоге ~/.bash_history,
В основном Ctrl + R ищет из этого файла.
Попробуй это:
history > output.txt
less output.txt
Затем поиск, набрав / + searchterm