Status personalizado Byobu

2
#! /bin/sh
echo "$(byobu ls|grep attached)"|sed 's/\([a-zA-Z0-9][a-zA-Z0-9]*\).*//'

este é o meu script em ~/.byobu/bin/ o tempo de atualização é de 1 segundo.

Isso mostra o nome da sessão como o status personalizado, mas faz isso para todos, menos 1 sessão. No lugar de mostrar o nome da sessão, mostra] 0 para essa sessão.

Existe algum problema com o comando echo?

    
por Anurag 02.11.2012 / 08:07

1 resposta

1

O problema pode ser encontrado quando você faz Byobu ls |grep attached > > ~/byobu_out .

Quando você filma este arquivo, a saída é normal, ou seja,

session1name:details 
session2name:details

mas quando você abre em vi , você vê que o arquivo é assim:

^[]0;[user@host](x.x.x.x)] - byobu^Gsession1name:details
session2name:details

Então, quando você passar essa saída por sed , ela será interrompida em ]0 .

Para superar isso, use tail -c +x [filename] para ver a saída, em que x é o número de bytes do cabeçalho de lixo eletrônico.

Além disso, o cabeçalho de lixo eletrônico não é mais do que o título da janela do terminal byobu.

    
por Iceman 02.11.2012 / 14:22