Присоединение, Отсоединение и Уничтожают процесс на Экране со сценарием удара

Я знаю, что можно запустить программу на отдельном экране, но я вошел бы в существующий экран, уничтожил бы в настоящее время рабочий процесс, перезапустил бы его и затем отсоединился бы.

Действительно ли возможно сделать это со сценарием удара, как я могу отправить ctrl-D ctrl-A и Ctrl-C, например?

2
задан 13 April 2017 в 15:37

2 ответа

Если Вы хотите удалить экран, можно также удалить псевдоним в /var/run/screens/{user/ и сделать screen -wipe.

, Но экран имеет материал и paste команда:

  • Команда: вставка [регистры [место назначения]]

    (C-a ], C-a C-])
    

    Запись (связанное) содержание указанных регистров к stdin потоку текущего окна. Регист𠆘. ’ рассматривают как буфер. Если никакой параметр не указан, пользователю предлагают ввести единственный регистр. Буфер может быть заполнен копией, историей и командами readbuf. Другие регистры могут быть заполнены регистром, readreg и вставить команды. Если вставку называют со вторым аргументом, содержание указанных регистров вставляется в именованный целевой регистр, а не окно. Если †˜. ’ используется в качестве второго аргумента, буфер дисплея является местом назначения. Отметьте, та вставка использует большое разнообразие ресурсов: Обычно оба, текущее окно и текущий дисплей требуются. Но каждый раз, когда второй аргумент указан, никакое текущее окно не необходимо. Когда исходная спецификация только содержит регистры (не буфер) затем не должно быть текущего дисплея (присоединенный терминал), поскольку регистры являются глобальным ресурсом. Буфер существует однажды для каждого пользователя.

  • Команда: материал {строка}

    Материал строковая строка во входном буфере текущего окна. Это похоже на команду вставки, но с намного меньше служебным. Вы не можете вставить большие буферы с командой материала. Это является самым полезным для привязок клавиш. См. Bindkey.

<час>

, Таким образом, это работает:

screen -S session_name -X at window_number stuff ^C
screen -S session_name -X at window_number stuff ^X

и отправляет управление-c и управление-x соответственно, и можно использовать его также для объединения кодов клавиши (как управление a, d)

1
ответ дан 2 December 2019 в 02:49

Если Вы хотите моделировать нажатия клавиш, аккуратный язык сценариев, "ожидают".

образец А ожидает, что сценарий мог бы быть чем-то как:

spawn $env(SHELL)
match_max 100000
send -- "screen\n"
expect eol
send -- "ls\n"
send -- "^Ad"
expect eof

Это было бы выполнено с:

expect ./myscript
2
ответ дан 2 December 2019 в 02:49

Другие вопросы по тегам:

Похожие вопросы: