BigBashView, interface gráfica para o seu shell script

Shell script é uma mão na roda, principalmente para alterar arquivos de configuração e criar aplicativos simples, mas interagir com o usuário utilizando apenas os sistemas de dialogo como Kdialog e Zenity muitas vezes é insuficiente. Então conheça o BigBashView e tenha disponível todas as capacidades do QTwebkit para criar interfaces Html/Javascript para seu shell script.

[ Hits: 58.206 ]

Por: Bruno Gonçalves Araujo em 04/08/2009


Visão geral



O BigBashView é uma interface para o terminal Bash que renderiza a saída do terminal utilizando QTwebkit.

Uma forma fácil e rápida para criar interfaces em sistemas Linux.

Para quem desenvolve sites em PHP irá notar diversas similaridades, veja um exemplo de "Hello World" para o BigBashView, faça um arquivo com a extensão .sh utilizando qualquer editor de texto e marque-o como executável:

#!/bin/bash

echo "Hello World"

Agora pelo terminal chame-o pelo BigBashView da seguinte forma:

bigbashview /home/biglinux/teste.sh

Nesse caso estamos utilizando o arquivo teste.sh na pasta /home/biglinux, é importante lembrar que é preciso utilizar o endereço completo do arquivo para abrir no bigbashview, não basta entrar na pasta /home/biglinux e dar o comando "bigbashview teste.sh".

Então o resultado será:
Linux: BigBashView, interface gráfica para o seu ShellScript
Veja um exemplo de programa feito utilizando BigBashView:
Linux: BigBashView, interface gráfica para o seu ShellScript
Portanto tudo que vai para a saída do terminal, ou seja, o que nós vemos ao executar um comando no terminal, será direcionado para o BigBashView, que irá utilizar QTwebkit para renderizar esse código recebido como se fosse um site.

Características importantes

Ao desenvolver utilizando BigBashView lembre dessas características:

1. Os arquivos interpretados devem utilizar extensão .sh e estarem marcados como executáveis.

2. Executar um script sem que o usuário seja enviado para outra página, por exemplo, um botão que abra o navegador Firefox. Utilize arquivos com a extensão .run e também lembre de marcá-los como executáveis, basta criar um link normal utilizando link com a extensão .run.

3. A dica 2 utiliza um exemplo simples, mas deve ser utilizada apenas em casos mais complexos, nesses mais simples utilize o arquivo /usr/share/bigbashview/run.run, ele foi criado justamente para essas situações, veja um exemplo de uso: Abrir Firefox

4. O BigBashView lê o resultado do terminal apenas ao final do script .sh, portanto se um comando no meio fizer parar o script, por exemplo executar o programa kppp, o painel ficará travado até que o kppp seja encerrado, para contornar isso é necessário fazer esse programa se comportar como um daemon, veja o exemplo com o kppp, pode ser adaptado a qualquer outro comando ou programa:

nohup kppp 2> /dev/null > /dev/null &

5. Incluir ícone de identificação da janela, basta incluir um -i e o endereço do ícone, veja no exemplo:

bigbashview /usr/share/bigcontrolcenter/categories/internet/dns/dns.sh -i /usr/share/bigcontrolcenter/categories/internet/dns/dns.sh

6. Especificando o tamanho da janela ao abrir, por padrão a janela possui tamanho 640x480, porém você pode especificar o tamanho das seguintes formas:
  • bigbashview -s 800x600 - alterando o 800x600 para o tamanho que preferir;
  • bigbashview -w maximized - para a janela abrir maximizada;
  • bigbashview -w fullscreen - para abrir em tela cheia.

7. O BigBashView possui problemas para trabalhar com frames, portanto utilize DIV quando necessário.

8. O suporte a método POST não funciona, utilize o método GET.

Página anterior     Próxima página

Páginas do artigo
   1. Explicação inicial
   2. Visão geral
   3. Crie seu primeiro painel para o BigControlCenter
Outros artigos deste autor

Reduzindo problemas de atualizações no Debian, Ubuntu e derivados - Parte 2

Reduzindo problemas de atualizações no Debian, Ubuntu e derivados

Leitura recomendada

gGedit como IDE para COBOL

Terminal Didático - Shell Script via WEB (PHP + Bootstrap)

KDialog com Shell Script - Conversão de slides JPG para projetores com suporte a miniaturas de imagens

Antispam em Shell Script

Conectando-se à Internet via ADSL com PPPoE no OpenBSD

  
Comentários
[1] Comentário enviado por pinduvoz em 04/08/2009 - 03:27h

Muito bom encontrar o "pai" de uma excelente distro nacional por aqui.

Aproveito para dar os parabéns pelo trabalho no Big Linux, cuja qualidade é inegável.

[2] Comentário enviado por Lisandro em 04/08/2009 - 07:21h

Muito bom. Adorei.

[3] Comentário enviado por removido em 04/08/2009 - 09:11h

Massa!!

[4] Comentário enviado por albfneto em 04/08/2009 - 09:47h

Realmente Bruno, parabéns pelo Big, é a melhor Distro Brasileira, atualmente....

[5] Comentário enviado por saviovibe em 04/08/2009 - 09:51h

muito rox!

[6] Comentário enviado por zendrael em 04/08/2009 - 10:04h

Olá Bruno!

Eu estou usando GTK2 e Gecko no meu projeto de linguagem de programação (Sphaira), e a título de curiosidade, tentei usar para ler comandos do shell e... funcionou. Se estiver afim, me contacte em pvt para unir os projetos ou trocar algumas idéias.

T+

[7] Comentário enviado por josef em 04/08/2009 - 18:23h

BigBruno, Legal o tuto,,,,MASassss, Uma pergunta, quando sai o Big 5......hehehe,,,,,,vamos garoto,,,,tó esperando...uma das melhores distro do mundo....quando, quando, quando?


[8] Comentário enviado por gilmargmppta em 12/08/2009 - 02:27h

bom artigo, de um bom cara, que criou uma otima distro, nota ? alguma duvida....
10 BigBruno

[9] Comentário enviado por wakeup em 25/09/2009 - 00:29h

No caso essa ferramenta funcionará apenas se estiver rodando o servidor X?? Ou existe a possibilidade de acessar o html através da rede e efetuar modificações no script??

[10] Comentário enviado por removido em 05/04/2010 - 14:37h

Legal o artigo!!! Eu tenho um dedinho dentro do BBV :-D mas reclamo mto tb

[11] Comentário enviado por removido em 09/01/2011 - 16:54h

legal valeu muito boa a dica,estou baixando só falta testar

[12] Comentário enviado por lponsoni em 25/03/2011 - 08:09h

Parabéns pelo artigo. Eu instalei o BigBashView, e ao tentar rodar um script simples recebi a seguinte mensagem de erro:

/usr/lib/pymodules/python2.6/gtk-2.0/gtk/__init__.py:127: RuntimeWarning: PyOS_InputHook is not available for interactive use of PyGTK
set_interactive(1)

Alguém sabe me sugerir como resolver este problema? Não tenho tanta experiência com Linux e mil desculpas se a dúvida for muito básica.

[13] Comentário enviado por Rayanne Lana em 20/05/2011 - 21:38h

muito legal vai ajudar muito, iniciantes

[14] Comentário enviado por joaogauer em 07/06/2011 - 19:28h

Muito show, tava procurando alguma coisa parecida.

[15] Comentário enviado por andrebian em 03/09/2011 - 14:43h

Olá, instalei no Debian Squeeze e deu o mesmo erro que o lponsoni...

Alguma sugestao pessoal?

[16] Comentário enviado por augustoschwartz em 24/11/2011 - 16:40h

Achei muito interessante este artigo. Parabéns.
Este exemplo de aplicação que você expõe: "Configurar servidor web", pode disponibilizá-lo para comunidade?

[17] Comentário enviado por nicolas.cb em 07/12/2011 - 15:56h

Tu vê só... bacana

[18] Comentário enviado por removido em 21/01/2012 - 11:59h

Como documentação serve a da nokia???Alguém conseguiu criar algum painel????

[19] Comentário enviado por thenarobourne em 22/02/2012 - 14:47h

propaganda do Big Linux Detected!!!

[20] Comentário enviado por laurence123 em 14/08/2014 - 13:27h

po véi, iu ta de brinqueishon uiti mi cara, ssa bagassa nun ta funfando nao bichu. o wget da um 403, como resolve ?

[21] Comentário enviado por bigbruno em 14/08/2014 - 15:08h

Esse artigo é de 2009, as coisas já mudaram, agora os pacotes estão aqui: http://repo.uniaolivre.com/packages/trusty/main/">http://repo.uniaolivre.com/packages/trusty/main/

Para adiciona-lo use os comandos:
echo 'deb http://repo.uniaolivre.com/packages trusty main' > /etc/apt/sources.list.d/kaiana.list
wget http://repo.uniaolivre.com/uniaolivre.key -O- | sudo apt-key add -

[22] Comentário enviado por laurence123 em 15/08/2014 - 11:03h


[21] Comentário enviado por bigbruno em 14/08/2014 - 15:08h:

Esse artigo é de 2009, as coisas já mudaram, agora os pacotes estão aqui: http://repo.uniaolivre.com/packages/trusty/main/">http://repo.uniaolivre.com/packages/trusty/main/">http://repo.uniaolivre.com/packages/trusty/main/">http://repo.uniaolivre.com/packages/tr...

Para adiciona-lo use os comandos:
echo 'deb http://repo.uniaolivre.com/packages trusty main' > /etc/apt/sources.list.d/kaiana.list
wget http://repo.uniaolivre.com/uniaolivre.key -O- | sudo apt-key add -


Opa, agora sim em, valew pela atenção em me atualizar bruno. funfo!


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts