Возможно ли получить текущий контекст или самый передний пользовательский процесс для запуска сценария при его изменении?

Например, пользователь

  • начинается с командной строки,
  • затем переходит в Emacs
  • выходит обратно в командную строку
  • идет в топ
  • квиты
  • и т.п.

Могу ли я заставить терминал автоматически запускать скрипт для каждого из этих переходов, который получает имя нового процесса, а потенциальный выполняет действие в соответствии с процессом?

1 ответ1

0

Вы можете использовать сценарий rcaloras bash-preexec для запуска команд предварительного исполнения всякий раз, когда пользователь запускает что-то из bash. Если пользователь входит в любую другую оболочку / приложение, ваш сценарий pre-exec будет запущен первым и может запускать свои собственные обработчики. Чтобы определить, когда пользователь выходит из этой программы, одним из возможных решений было бы продолжение сценария опроса вашего скрипта в фоновом режиме, чтобы узнать, существует ли еще pid.

Соответствующий ответ суперпользователя

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