tmux: как связать ключ для запуска команды оболочки?


9

Я использую tmuxдля разработки две панели: одну для редактирования кода и одну для его компиляции. Мне нужно переключать панель очень часто, чтобы запустить команду компиляции (скажем, " mvn install").
Как я могу связать ключ (скажем, « Ctrl+ B C») для запуска этой конкретной команды в другой панели (или вообще без какой-либо панели)?

Ответы:


7

C-b cуже имеет стандартную привязку, которую было бы целесообразно оставить без изменений. Выбор другого символа, например, C-b Cвы можете установить привязку в вашем ~/.tmux.confфайле следующим образом:

bind C send-keys -t.- 'mvn install' Enter

В -t.-означает «другая панель». Enterобозначает ключ этого имени, то есть символ новой строки в конце команды.


Спасибо за решение. Тем не менее, я узнал, что он также печатает команду на панели терминала из-за.
Elquimista

7

Правильный ответ на этот вопрос: использовать bind-key, например:

tmux bind-key "$KEY" run-shell "/path/to/script.sh"

где KEY=Cв вашем случае.


Спасибо. Мне не понятно, где будет выполняться команда? В какой панели будет вывод?
cdupont

Это должен быть принятый ответ. Ответ meuh работает, но он имитирует реальное взаимодействие с человеком, что приводит к выводу команды на панель терминала.
Elquimista
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.