Установка и использование gksudo
вместо этого, это похоже на фронтенд sudo
.
сам gksu не расценит sudoers файл.
Если Вы хотите взаимодействовать с tmux
в сценарии это - то, где Вы хотите использовать tmux ... tmux-command
. Как:
tmux kill-session
Выходить из текущей сессии.
tmux kill-server
Выходить из сервера (уничтожает все сессии).
tmux detach-client
отсоединять клиент (выход, но можно повторно прикрепить позже).
Отвечать на вопрос в заголовке.
Способ моделировать нажатие клавиши в терминале через TIOCSTI
Например:
insert() {
perl -le 'require "sys/ioctl.ph";
ioctl(STDIN, &TIOCSTI, $_) or
die "$!\n" for split "", join " ", @ARGV' "$@"
}
Однако в случае tmux
, если Вы делаете:
insert $'\02'
в a tmux
область, которая вставит ^B
символ во входном буфере терминала той области, не любой из терминалов, присоединенных к текущей сессии tmux
читает его вход из.
Решение состояло бы в том, чтобы сделать:
insert $'\02' < "$(tmux lsc -F '#{client_tty}' -t '' | head -n 1)"
Где:
tmux lsc -F '#{client_tty}' -t ''
сообщает терминал (терминалы), присоединенный к рабочей сессии.
Но в современных системах Linux, которые не будут работать (Вы получите Операцию, не разрешенную ошибку), потому что из соображений безопасности TIOCSTI ioctl может только быть выпущен к Вашему терминалу управления (и терминал управления оболочки, интерпретирующей сценарий в a tmux
область была бы терминалом области).
Необходимо было бы спросить tmux
чтобы сделать это, и я не уверен, что это возможно.
Можно легко закрыть tmux путем выполнения:
pkill -term tmux
Это отправит tmux: "Делайте, что хочется близко"
Другой полезный *инструмент NIX для автоматизации взаимодействий с терминальными программами, Ожидайте:
tmux
; когда я работаюtmux kill-session
, это уничтожило бы мой конец, или Raspberry Pi (что я - SSH'ing к), конец? – evamvid 01.02.2014, 19:17tmux
говорит с tmux сервером через сокет домена Unix (чей путь находится в$TMUX
), таким образом, это может только говорить с tmux сервером на той же машине, таким образом, процесс может только уничтожить tmux сессию, которая работает на той же машине. – Stéphane Chazelas 01.02.2014, 20:58