Начиная с OS X 10.11 El Capitan , установленный системой сценарий /etc/bashrc_Apple_Terminal
координируется с Терминалом, чтобы сохранить / восстановить отдельные истории команд для каждого терминала, восстановленного для Возобновления .
Прочитайте комментарии, /etc/bashrc_Apple_Terminal
чтобы узнать, как они управляют историями команд для каждого терминала и как их настраивать.
Если вы настраиваете PROMPT_COMMAND
, убедитесь, что конкатенация к предыдущему значению, чтобы вы не уничтожили предоставленную системой команду:
PROMPT_COMMAND="${PROMPT_COMMAND:+$PROMPT_COMMAND; }your_code_here"
Если вы устанавливаете EXIT
обработчик сигнала с trap
тем, чтобы сделать что-то подобное (или вызовите shell_session_update из вашего обработчика, если вы не можете понять, как объединить предыдущее значение - это немного сложнее).
При выходе из оболочки этот код будет сохранять новые команды в истории терминала в ~/.bash_sessions
. Чтобы увидеть, не возникло ли каких-либо проблем, вместо закрытия терминала выйдите из оболочки вручную с помощью exit
(или Control-D). Он регистрирует сообщения о прогрессе. Обратите внимание, если он не завершен или отображаются какие-либо предупреждения или сообщения об ошибках.
В общем, bashrc_Apple_Terminal
попытки обнаружить и отключить историю сеансов, если похоже, что пользователь выполнил любые настройки, которые не совместимы с ним. Похоже, вы нашли тот, с которым не справитесь. Пожалуйста, рассмотрите возможность отправки отчета об ошибке в Apple: https://developer.apple.com/bug-reporting/