Criando automaticamente uma configuração de tela específica na inicialização

Criando automaticamente uma configuração de tela específica na inicialização

Aqui está o meu problema:

Tenho uma configuração específica com tela que gosto de iniciar na inicialização, para ter acesso rápido a diversos programas que utilizo com frequência.

Aqui está um exemplo:

tela -U -S teste -t ​​shell

Dentro desta sessão de tela:

screen -t irc (no qual iniciarei o irssi) screen -t process (no qual iniciarei o top) ...

Observe que isso resulta em teruma sessão únicae vários shells nesta sessão. Eu especifico isso porque até agora meus testes me levaram ao ponto em que meu script cria uma sessão de tela, em uma sessão, em uma sessão... e não consigo entender por quê.

Gostaria de saber se é possível construir um script que eu possa lançar para criar toda a configuração da tela e iniciar os programas automaticamente quando executados.

Obrigado por qualquer conselho. =)

Responder1

Crie um ~/.screenrcarquivo contendo:

defutf8 on
sessionname test
screen -t shell   0
screen -t irc     1 irssi
screen -t process 2 top

Então, ao fazer login na caixa, execute

screen -DR

que separa qualquer tela em execução no momento e se anexa a ela ou, se nenhuma tela estiver em execução, cria uma nova.

Responder2

Você pode usar screen -S sessionname -X commandpara executar tmux-commands 1 em uma sessão existente, por exemplo, -X screen toppara criar uma nova janela e executar topnela. Observe que a janela recém-criada será fechada quando o comando terminar. Se você quiser ter um shell depois, use algo como -X screen sh -c 'ls; bash'.

Também existem maneiras de executar comandos em janelas de tela existentes, veja estas duas questões:

1: Você pode encontrar a lista completa de comandos do tmux em sua página de manual.

informação relacionada