
Я попытался исправить синтаксис аргумента send keys и попробовал несколько вариантов, которые я пытался собрать воедино из страницы руководства, но, должно быть, я просто что-то не понимаю.
Я инициализирую tmux следующим образом и хочу управлять им, как показано ниже.
sudo -H -u username1 -g usergroup1 bash -c '/usr/bin/tmux -S /home/shares/tmux_sessions/sock_file new -d -s "sess-tv0-i" mycommand -arg1 -arg2'
sudo -H -u username1 -g usergroup1 bash -c '/usr/bin/tmux -S /home/shares/tmux_sessions/sock_file new -d -s "sess-tv1-i" mycommand -arg1 -arg2'
sudo -H -u username1 -g usergroup1 bash -c '/usr/bin/tmux -S /home/shares/tmux_sessions/sock_file new -d -s "sess-tv2-i" mycommand -arg1 -arg2'
Я пытаюсь отправить ключи в отдельную сессию, однако моя команда ниже, похоже, отправляет команду во все сессии, что нежелательно; я хочу отправлять ключи только в одну сессию за раз.
tmux -S /home/shares/tmux_sessions/sock_file send-keys C-c -t sess-tv0-i
Использование указанной выше команды не приводит к ошибке, однако, как указано, она отправляет эту строку ключа нескольким сеансам в этом сокете.
Я также попробовал сделать следующее, но безуспешно.
tmux -S /home/shares/tmux_sessions/sock_file target-session -t sess-tv0-i send-keys C-c
unknown command: target-session
tmux target-session -t sess-tv0-i send-keys C-c
error connecting to /tmp/tmux-0/default (No such file or directory)
tmux -S /home/shares/tmux_sessions/sock_file -t sess-tv0-i send-keys C-c
tmux: unknown option -- t
usage: tmux [-2CluvV] [-c shell-command] [-f file] [-L socket-name]
[-S socket-path] [command [flags]]
Спасибо за любой совет или указание правильного направления.
решение1
Очевидная ошибка была в использовании
tmux -S /home/shares/tmux_sessions/sock_file send-keys C-c -t sess-tv0-i
который будет отправлять клавиши Cc или Control+c всем сеансам в этом sock-файле вместо использования
tmux -S /home/shares/tmux_sessions/sock_file send-keys -t sess-tv0-i C-c
что позволяет правильно оценить флаг -t.