terminal.app: como ler o título da janela do terminal

3

Eu tenho visto muitas perguntas sobre como definir o nome da guia (ou janela), mas como obtê-la? Eu tenho o terminal de instalação para abrir 8 guias, cada guia com seu próprio nome (dev1, dev2, ... dev8) Existe alguma maneira de um script de shell identificar em qual guia ele é (leia o nome da guia?)

    
por Mario 17.06.2013 / 19:27

3 respostas

0

Isso funciona na minha caixa do Fedora, mas eu não tenho um Mac para verificar:

xprop -id $WINDOWID | grep '^WM_NAME(STRING)' | cut -d\" -f2
    
por 17.06.2013 / 20:15
0

Se tudo mais falhar, então o AppleScript para o resgate:

title='osascript -e 'tell application "Terminal" to  get name of front window''
echo $title

Tenha cuidado ao usar of front window ao usar várias janelas. Isso imprimirá os resultados incorretos ao alternar para outra guia em 5 segundos:

sleep 5; osascript -e 'tell application "Terminal" to  get name of front window'

(Então eu espero que alguém possa te dar um jeito mais fácil.)

    
por 17.06.2013 / 20:30
0

Existe uma sequência de controle para solicitar o título da janela, que corresponde à seqüência para definir o título; no entanto, ele não é suportado pelo Terminal e está desativado por padrão no XTerm (e eu assumo outros emuladores de terminal) por motivos de segurança / privacidade.

A documentação do XTerm para as sequências de controle para definir / obter o título da janela:

http://invisible-island.net/xterm/ctlseqs/ctlseqs.html#h2-Operating-System-Commands

O uso de scripts de aplicativos como na resposta do Arjan funciona, mas somente quando o programa remoto está no mesmo computador e, Ao contrário da sequência de controle, o script tem regras de segurança, como exigir autenticação se os processos emissor e receptor não tiverem o mesmo proprietário / usuário.

    
por 04.10.2018 / 03:41