4

Когда я использую несколько терминальных сессий одновременно, bash сохраняет команды только одного из них. Затем, когда я попытаюсь выполнить обратный поиск команд, нужная мне команда не появится, потому что она не вошла в историю.

Я думаю, что это ужасно. Как я могу получить функцию истории оболочки, которая может выполнять поиск по всем моим командам, независимо от того, в какой сессии они были? Я с радостью переключусь на другую оболочку, чем bash, если это потребуется.

Я использую Mac OS X и Ubuntu.

1 ответ1

1

Простейшим хаком было бы добавить эти строки в ваш файл .bashrc:

shopt -s histappend
export PROMPT_COMMAND="history -a; history -c; history -r; $PROMPT_COMMAND"

Вариации вокруг этой техники показаны здесь.

Это может быть ненадежно, в этом случае вы можете переключиться на ksh (лучше последний ksh93), с которым это конфигурация по умолчанию.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .