shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] Shell com Dialog


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 script

Ok, 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 Script
Mas 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



reply via email to

[Prev in Thread] Current Thread [Next in Thread]