Я делаю широкое применение из функций для навигации через историю команд в моем терминале; интересно, существует ли некоторый способ переместиться по выходной истории команды также? (помимо хранения большого histsize и облокачивания на pgup ключ)
Я не могу только 'повторно выполнить команду', как в моей конкретной ситуации источник изменений команд; я часто должен оглядываться назад на вывод предыдущего изменения.
Приветствующиеся взломы.
Спасибо!
Редактирование 2010:
Я дал 'мишени' кредит; среди всех методов для входа сессии в другом месте это наиболее широко применимо (т.е. это - часть гну coreutils и не требует, чтобы определенная оболочка или утилита работали). Это не было действительно, что я искал, но я понимаю, что такая вещь действительно не существует.
Самое близкое приближение, о котором я могу думать, должно использовать что-то как screen
(byobu/tmux), который регистрируется в файл и запись (и keybind) пользовательская команда для разбивания на страницы/перерытия того файла журнала (думают less
подкачка страниц подсказкой, а не экраном). Спасибо все.
Редактирование 2012:
Ответ Киркланда @Dustin является ясно лучшим по крайней мере обычно; буфер scrollback терминала меньше всего - навязчивый способ переместиться по выходной истории команды. Byobu, кажется, имеет большое количество по умолчанию сохраненных строк истории (10K; tmux имеет 2K, экран 100 GNU), и он позволяет поиски regex (поверхностный взгляд указывает, что экран GNU не имеет никакого поиска scrollback, и tmux имеет только поиск простого текста).
Можно использовать tee
отправить Ваш вывод команды в файл и в терминал одновременно.
screen
может быть установлен зарегистрировать вывод.
Один способ запустить его, в рамках выполнения screen
сессия, должен нажать Ctrl-a, затем: затем войдите log
.
От man screen
:
log [on|off]
Start/stop writing output of the current window to a file "screenlog.n" in the
window's default directory, where n is the number of the current window.
This filename can be changed with the `logfile' command. If no parameter is
given, the state of logging is toggled. The session log is appended to the
previous contents of the file if it already exists. The current contents and
the contents of the scrollback history are not included in the session log.
Default is `off'.
logfile filename
logfile flush secs
Defines the name the log files will get. The default is "screenlog.%n". The
second form changes the number of seconds screen will wait before flushing the
logfile buffer to the file-system. The default value is 10 seconds.