MyTetra Share
Делитесь знаниями!
Как отправить в tmux команды или нажатия нужных клавиш
Время создания: 17.04.2023 09:45
Автор: xintrea
Текстовые метки: tmux, xterm, терминал, команда, клавиша, отправить, виртуально, нажать
Раздел: Компьютер - Linux - Bash - Терминал
Запись: xintrea/mytetra_syncro/master/base/1681713927wet1eo9fm7/text.html на raw.github.com

В сессии tmux имеется возможность "удаленной" отправки команд. Так же можно отправлять нажатия нужных клавиш. Имеется в виду, что можно выполнить специальную команду, которая будет выполнять некие действия (команды) в указанной tmux-сессии.


Провернуть такой трюк можно путем выполнения следующих команд:



# Создается tmux-сессия с уникальным именем

tmux new -d -s mySession


# Псевдотерминал tmux-сессии открывается в отдельном окне xterm

# о твязыванием от текущего терминала (символ & в конце команды)

xterm -e tmux attach &


# Здесь демонстрация того как в tmux-сессию

# отправляются команды и нажатие клавиши Enter

tmux send-keys -t mySession.0 "ls -la " ENTER



В последней команде можно отправлять потоки символов, заключенные в кавычки, и названия клавиш. В документации на команду send-keys не сказано, как называются специальные клавиши, поэтому ниже приведена таблица допустимых имен клавиш:



Up, Down, Left, Right,

BSpace, BTab, DC (Delete), End, Enter, Escape,

F1 ... F12,

Home, IC (Insert),

NPage/PageDown/PgDn, PPage/PageUp/PgUp,

Space, Tab.



Если необходимо написать сочетание клавиш, то можно пользоваться следующим синтаксисом:



Сочетание Ctrl+... обозначается как:


'C-...' или '^...', например 'C-A' или '^A'


Сочетание Alt+... обозначается как использование meta-клавиши:


'M-...', например 'M-A'



Наличие механизма отправки команд и клавиш добавляет в tmux уникальные возможности по автоматизации работы с консольными приложениями.


Так же в этом разделе:
 
MyTetra Share v.0.59
Яндекс индекс цитирования