gnu screen: renomeia sem apagar o nome anterior?

0

No meu fluxo de trabalho, eu sempre tenho várias telas nomeadas personalizadas.

Eu uso a tela modificada, por exemplo Ctrl-a , Deslocamento - a : para chegar ao modo de mudança de nome. Começará com o nome anterior e o cursor no final. Eu então devo pressionar Backspace para apagar tudo e depois digitar o nome.

Na maioria das vezes eu estou no modo brainless automático e esqueço de apagar o nome antigo, terminando com algo como "bashNewname".

Eu poderia editar meu screenrc para definir o nome padrão para "" em vez disso, mas eu uso toneladas de sistemas que não possuem meu screenrc. Então, se houvesse um comando que eu não soubesse ao invés de Shift - a e que estivesse disponível em todas as instalações padrão da tela do gnu, seria incrível.

    
por gcb 08.02.2017 / 20:58

1 resposta

1

Você pode definir o título de uma janela de tela com sequências de escape (no manual de tela ):

To change the name after the window has been created you can use the title-string escape-sequence (<ESC> k name <ESC> \) and the title command (C-a A).

Para one-offs rápidos e sujos, basta echo -e do título que você deseja no shell dessa janela ( 3 é equivalente a <ESC> e -e interpreta sequências de escape):

$ echo -e '3k NewTitle3\'

... embora printf possa ser mais rápido de digitar e mais portátil:

$ printf '3k NewTitle3\'

Qualquer um desses comandos deve resultar em NewTitle aparecendo como o título da sua janela atual.

Não será difícil automatizar isso com um alias ou função de shell, embora algum tipo de macro de teclado possa ser mais útil se você estiver usando isso com freqüência em sistemas remotos (por exemplo, através de ssh) que não compartilharão sua arquivos shell rc.

    
por 08.02.2017 / 23:09