Я - новая Ubuntu/пользователь Linux, я хотел бы задать вопрос как свой заголовок выше.
Например, у меня есть файл удара ./script
, Я хотел бы заставить его работать автоматически, когда я ввожу любую командную строку. После того как я выполняю командную строку pwd
затем ./script
будет выполняться. После того как я ввожу следующую командную строку ls -la
затем ./script
будет выполняться снова.
Необходимо установить PROMPT_COMMAND
переменная. От man bash
:
PROMPT_COMMAND
If set, the value is executed as a command prior to
issuing each primary prompt.
, Например, это запишет текущую дату в /tmp/PC
каждый раз, когда команда выполняется:
$ PROMPT_COMMAND="date > /tmp/PC"
Вы ищете PROMPT_COMMAND
переменная среды, значение этой переменной будет выполняться как команда, после того, как каждая команда, данная в терминале, будет выполнена, прежде, чем показать следующую подсказку.
, Например, устанавливает его как:
export PROMPT_COMMAND='/path/to/script'
Делают сценарий, /path/to/script
, исполняемый файл сначала.
Теперь скрипт будет запущен после каждой команды.
Только для замечания, если Вы не хотите, чтобы переменная была экспортирована, т.е. делаете ее переменной оболочки вместо среды один, отбрасываете export
:
PROMPT_COMMAND='/path/to/script'
От man bash
:
PROMPT_COMMAND
If set, the value is executed as a command prior to issuing each primary prompt.