|
From: | Renato Greggio |
Subject: | Re: [shell-script] Shell com Dialog |
Date: | Sun, 15 May 2005 11:12:45 -0300 |
User-agent: | Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.5) Gecko/20041221 |
MrBiTs wrote:
Renato Greggio wrote:Bom, em meu primeiro e-mail trago uma dúvida que não consegui sanar, vejam:estou criando um programinha para ler comandos e mostrar a saida em dialog, o programa é este:#inicio do script #!/bin/bash ##################### # Script por Renato Greggio# ##################### echo "Digite o comando ao qual deseja visualizar o manual: " read comando sleep 2 man $comando # Fim do script Porém quero fazer tudo isto em Dialog e cheguei ate a segiunte etapa: #inicio do script #!/bin/bash ################## #Script por Renato Greggio# ################## comando=$(dialog --stdout \ --backtitle 'Manual de comandos' \--inputbox 'Qual o comando que deseja visualizar a ajuda???' 0 0)man $comando #Fim do scriptOk, ate ai tudo bem, so que se executarem o script verão que o man neste caso é apresentado fora de uma jante texto do dialog, e no caso eu gostaria que tudo fosse mostrado em uma janela texto, então pensei no seguinte(o que não esta dando certo:#inicio do script #!/bin/bash ################## #Script por Renato Greggio# ################## comando=$(dialog --stdout \ --backtitle 'Manual de comandos' \--inputbox 'Qual o comando que deseja visualizar a ajuda???' 0 0)man $comando > /comando dialog --stdout \ --backtitle 'Ajuda de comando' \ --textbox /comando 0 0 #Fim de ScriptMas ai é que está minha duvida, não consigo fazer este script rodar corretamente. quem puder me ajudar, estarei grato.Parabens pelo e-mail muito bem explicado.A principio, nao é boa politica gravar coisas diretamente na raiz do seu sistema de arquivos ( o > /comando que voce faz ). Alguns aplicativos e usuarios simplesmente podem nao ter permissoes para ler esse diretorio epecial. Entao, a modificacao simples que fiz em seu script foi:#!/bin/bash ################## #Script por Renato Greggio# # Modificacao por MrBiTs ################## comando=$(dialog --stdout \ --backtitle 'Manual de comandos' \ --inputbox 'Qual o comando que deseja visualizar a ajuda???' 0 0) # man $comando > /comando nao e bom # entao modificamos a saida para o # temporario man $comando > /tmp/__man_"$comando"__ dialog --stdout \ --backtitle 'Ajuda de comando' \ --textbox /tmp/__man_"$comando"__ 0 0 rm -f /tmp/__man_"$comando"__ #EOF Assim vc ve que tudo funciona
Desculpe, mas não funcionou :(Bom, ele fez o mesmo que o meu, só que gravando no /tmp, na verdade não pretendia gravar na raiz, isto estava sendo so durante os testes, mas mesmo assim obrigado pela dica :) ....
agora quanto ao erro ele escreve na tela: Error: Unknown option 0. Use --help to list options. Bom,,, então fiz o seguinte, e funcionou: #!/bin/bash ####################### #Script por Renato Greggio ## # Colaboração: MrBits ## ####################### LARGURA_TELA=$((`tput cols` -2)) ALTURA_TELA=$((`tput lines` -5)) comando=$(dialog --stdout \ --backtitle 'Manual de comandos' \--inputbox 'Qual o comando que deseja visualizar a ajuda??' 0 0)
man $comando > /tmp/__man_'$comando'__" dialog --backtitle "Ajuda do comando '$comando'" \ --textbox "/tmp/__man_"$comando"__" \ $ALTURA_TELA $LARGURA_TELA rm -f /tmp/__man_"$comando"__ Att Renato Greggio
[Prev in Thread] | Current Thread | [Next in Thread] |