Como exibir algo na unidade systray a partir de um script bash

5

Existe uma maneira de mostrar algo (um aviso, um ícone persistente que eu poderia alterar, qualquer coisa) na bandeja do sistema em Unity ? Eu preciso ser capaz de controlá-lo a partir de um script bash .

Idealmente, este seria um comando que poderia controlar uma área na bandeja do sistema e fornecer mensagens sobre o status do script que estou executando. Então, provavelmente, não precisa ser específico para Unity, apenas seja compatível com ele.

    
por Konrad Gajewski 01.03.2016 / 03:38

2 respostas

3

O método mais próximo que encontrei para satisfazer seus requisitos é ( webupd8. org - Appindicator do Ubuntu que exibe o bash ) que exibe texto na barra do indicador da bandeja / aplicação do sistema Unity.

Instalar e Configurar o Indicador Sysmonitor

Você precisa instalar o indicator-sysmonitor do ppa:

sudo add-apt-repository ppa:fossfreedom/indicator-sysmonitor
sudo apt-get update
sudo apt-get install indicator-sysmonitor

Em seguida, execute o gui e configure-o com o nome do script que atualiza a bandeja do sistema.

Scripts de amostra para saída na bandeja do sistema

Aqui estão alguns exemplos do link acima:

  • Exibe a frequência atual da CPU para o primeiro núcleo:

    echo $(grep "cpu MHz" /proc/cpuinfo | head -1 | cut -d ' ' -f3 | cut -d '.' -f1) MHz

  • Verifique se um site está ativo (face sorridente) ou triste (rosto triste):

    if wget -O /dev/null webupd8.org > /dev/null; then echo "☺"; else echo "☹"; fi

Relatórios de bugs no Ask Ubuntu

Neste AU "Mega Thread" de muitos indicadores ( Quais indicadores de aplicação são disponível? ) um comentário afirma Sysmonitor Indicator não funciona no Ubuntu 16.04. No entanto, um relatório de erros afirma que é porque, quando você obtém o código e não funciona no repositório, é necessário obtê-lo no github, conforme descrito neste link: ( link ).

Acabei de instalar a partir do PPA acima de hoje (9 de fevereiro de 2017) no Ubuntu 16.04 e posso confirmar que funciona. Consegui escrever um script personalizado e a saída aparece no systray como esperado.

    
por WinEunuuchs2Unix 09.02.2017 / 12:58
2

Você olhou para notify-send ? Funciona muito bem para mensagens temporárias, acho que está em todos os desktops do Ubuntu (definitivamente no XFCE) ou deve estar disponível com um comando rápido apt .

Tem opções como:

-u, --urgency=LEVEL Specifies the urgency level (low, normal, critical).

-t, --expire-time=TIME
          Specifies the timeout in milliseconds at which to expire
          the notification.

-i, --icon=ICON[,ICON...]
          Specifies an icon filename or stock icon to display.

-c, --category=TYPE[,TYPE...]
          Specifies the notification category.

Página man também diz:

  

VEJA TAMBÉM
  As especificações de notificação da área de trabalho no link

    
por Xen2050 01.03.2016 / 05:43