Para manter a tela ocupada após a conclusão do script, basta manter algo persistente em execução em uma janela. A escolha mais simples para esse "algo" é provavelmente um shell interativo. Aqui está uma maneira de fazer isso (assumindo bash
como a opção do shell interativo):
screen -dmS session_name sh -c '/share/Sys/autorun/start_udp_listeners.sh; exec bash'
-
-dm
: inicia a tela no modo desanexado -
-S
: define o nome da sessão para a tela para facilitar a recuperação mais tarde -
sh -c '...'
: em vez de simplesmente executar seu script, que terminará, usesh -c
para executar vários comandos -
exec bash
: depois que o script terminar, osh
acima mudará para um shell interativo (bash
), que nunca deve sair até que algo externo o termine. Isso manteráscreen
aberto enquanto a instânciabash
estiver ativa.