Выполнить команду в приложении Gnu Screen
Возможно ли, чтобы GNU Screen обнаружил, когда был присоединен сеанс, и выполнил команду? (Команда будет сценарием оболочки, который я написал)
Благодарю.
1 ответ
Что именно ты пытаешься сделать? Это, вероятно, не совсем отвечает на ваш вопрос, но вы можете адаптировать их к вашим потребностям:
Вы можете создать скрипт с именем screenr, который будет заново подключать сеанс экрана после первого выполнения вашего скрипта в этом сеансе.
#!/bin/bash
screen -X exec /command/to/run
screen -r $@
Другая идея может заключаться в том, чтобы поместить что-то в ваш.bashrc, чтобы проверить, работает ли у вас экран, а затем выполнить команду. Он будет запускаться всякий раз, когда вы запускаете новый сеанс экрана или создаете новую оболочку на экране, но не запускается, если вы присоединяете уже запущенный сеанс экрана.
if [ $TERM = "screen-256color-bce" ]; then
/command/to/run
fi
Изменить: После просмотра вашего другого вопроса, похоже, что экранная команда setenv может быть то, что вы хотите, но он только устанавливает переменные окружения для новых оболочек, запущенных на экране, а не запущенных.
screen -X setenv DISPLAY $DISPLAY