Я знаю, что вы можете запускать программу на отдельном экране, но я бы входил в существующий экран, убивал текущий запущенный процесс, перезапускал его, а затем отсоединял.
Возможно ли это сделать с помощью сценария bash, как я могу отправить ctrl-A ctrl-D и Ctrl-C?
Если вы хотите симулировать нажатия клавиш, то «ожидаемый» должен выглядеть «аккуратный» сценарий.
Пример сценария ожидания может быть примерно таким:
spawn $env(SHELL)
match_max 100000
send -- "screen\n"
expect eol
send -- "ls\n"
send -- "^Ad"
expect eof
Это будет выполнено с :
expect ./myscript