Есть ли способ сохранить все мои набранные команды терминала и просмотреть их как историю в журнале?
Это автоматически сделано. Bash хранит Ваши команды в ~/.bash_history
. Если Вы хотите взглянуть на историю, или распечатать вывод этого файла с помощью одного из
cat ~/.bash_history
less ~/.bash_history
...any other pager or output command...
, Или можно использовать встроенную команду удара:
history
Для очистки истории удалите файл и очистите временную историю:
rm ~/.bash_history && history -c
значения по умолчанию размера истории к 500 командам. Можно, однако, увеличить это путем добавления следующей строки к Вашему ~./bashrc
:
HISTSIZE=<number of entries, -1 for unlimited>
Это сразу не вступит в силу, но только к недавно запущенным сессиям. Для применения этого снабдите .bashrc файл:
. ~/.bashrc
или выполненный HISTSIZE=...
на Вашей текущей сессии.
Можно ввести history
на терминале для просмотра всех предыдущих выполняемых команд.
Можно усечь вывод к некоторым строкам (где 5 количество строк):
history 5
Если делают Вы хотите просмотреть только команды, содержащие строку (т.е. mv
), можно сделать это:
history | grep mv
Можно повторно вызвать команду путем ввода !
сопровождаемый числом записи.
Скажем, то, что у меня есть история как это:
1 ls -la
2 mkdir foo
3 mv bar.txt foo
mkdir foo
, можно ввести !2
.!-1
или !!
!-2
Если Вы выполняете команду, которая перестала работать, потому что ей нужны полномочия пользователя root (т.е. touch /etc/foo
), можно использовать sudo !!
выполнять последнюю команду как корень.
!man
Вы выполните последнюю команду, которая начинается man
!?man?
это выполнит последнюю команду, которая содержит man
(не обязательно в строке начинаются),Если делают у Вас есть опечатка в команде, можно зафиксировать ее этот путь. Скажем, то, что я ввожу cat .bash_hi
, заменять .bash_hi
.bash_history
Я только должен ввести ^hi^history^
.
Просто тип:
history > print.txt
А новый файл под названием print.txt будет создан в Вашем в настоящее время рабочем каталоге.
Я часто просто хочу те недавние команды, также. Отправить на мои примечания разработки или, ну, в общем, stackexchange сайты как они... Это оказалось очень полезным, удалив несоответствующие номера строки:
history | cut -c 8- | tail
или, если Вам нравится он как псевдоним, номера строки, удаленные и расположенные с отступом сразу же (столь же необходимый для скидки с цены кавычки кода)
alias lastones="history | tail | sed -e 's/^ [0-9]\{1,5\} / /gi'"
Можно хотеть попробовать https://github.com/dvorka/hstr, который позволяет простой просмотр, навигация и "предлагают фильтрацию" стиля поля истории Bash:
Это может быть легко связано с Ctrl-r и/или Ctrl-s