Gerar menu a partir de arquivo externo no dialog - problema com aspas [RESOLVIDO]

1. Gerar menu a partir de arquivo externo no dialog - problema com aspas [RESOLVIDO]

Ian Brunelli
brunelli

(usa Arch Linux)

Enviado em 13/02/2013 - 11:48h

Olá a todos do VOL!
Estou com um problema ao tentar criar um menu no dialog cujas opções sejam obtidas através de um arquivo externo.
A estrutura do arquivo externo (itens.txt) é a seguinte:

item1 "Este é o item 1" item2 "Este é o item 2"

E o script para gerar o menu é:

#!/bin/bash
dialog --stdout --title "MENU" --clear --nocancel --menu "Escolha um item:" 0 0 0 `cat itens.txt`

O problema é que, ao invés de colocar a descrição do menu como "Este é o item n", o dialog reconhece as aspas como caracter comum, e exibe um menu completamente quebrado.

Escolha um item:
item1 "Este
é o
item 1"
item2 "Este
é o
item 2"

Será que alguém pode me ajudar com isso?
Já tente várias alternativas e nada funcionou :-/
Abraços.


  


2. Re: Gerar menu a partir de arquivo externo no dialog - problema com aspas [RESOLVIDO]

Perfil removido
removido

(usa Nenhuma)

Enviado em 13/02/2013 - 12:16h

Opa, beleza?

Já viu o site do Aurelio? Esse:
http://aurelio.net/shell/dialog/

Mesmo se estudar por lá e não conseguir, dá um alô que agente tenta junto. Até mais.


3. Re: Gerar menu a partir de arquivo externo no dialog - problema com aspas [RESOLVIDO]

Ian Brunelli
brunelli

(usa Arch Linux)

Enviado em 13/02/2013 - 12:32h

Então, foi por lá mesmo que eu comecei a usar o dialog.
E já tentei inclusive seguir a estrutura que ele utiliza para menus, mas o erro persiste.
De qualquer forma, obrigado...


4. Re: Gerar menu a partir de arquivo externo no dialog - problema com aspas [RESOLVIDO]

Perfil removido
removido

(usa Nenhuma)

Enviado em 14/02/2013 - 08:49h

brunelli escreveu:

Então, foi por lá mesmo que eu comecei a usar o dialog.
E já tentei inclusive seguir a estrutura que ele utiliza para menus, mas o erro persiste.
De qualquer forma, obrigado...


Brunelli,

Eu vi que o problema está sendo com isso: `cat lista.txt`. Numa busca rápida, não encontrei nada que explicasse como fazer. Vamos esperar pra ver se alguém nos explica.

Só uma pergunta, porque você não coloca os itens do menu dentro do script? Assim funcionará:

#!/bin/bash

dialog --stdout --title 'MENU' --clear --nocancel --menu 'Escolha um item:' 0 0 0 item1 'Este é o item 1' item2 'Este é o item 2'

No link que citei mostra como dar uma organizada no script.

Outra coisa, prefira usar aspa simples pra texto, pois, dependendo do caractere que estiver dentro das aspas duplas, o shell poderá interpretar e gerar algum tipo de problema no seu script.

Flw.


5. Re: Gerar menu a partir de arquivo externo no dialog - problema com aspas [RESOLVIDO]

Ian Brunelli
brunelli

(usa Arch Linux)

Enviado em 14/02/2013 - 10:10h

O problema é que este menu precisa ser gerado através de um arquivo externo.
Imagine que eu tenho várias pastas, e dentro de cada uma um arquivo itens.txt. O script, depois que eu selecionar a pasta, vai gerar o menu com base no arquivo dentro da pasta selecionada.
Quanto ao uso de aspas, apresenta problemas tanto com as simples quanto com as duplas :/


6. Re: Gerar menu a partir de arquivo externo no dialog - problema com aspas [RESOLVIDO]

Perfil removido
removido

(usa Nenhuma)

Enviado em 14/02/2013 - 10:58h

Entendi o contexto. Então, o lance das aspas duplas foi só pra questão de boa prática, não era pra ser a soluação do problema :p

Vou dar uma pesquisada, se conseguir algo, estarei postando.


7. Re: Gerar menu a partir de arquivo externo no dialog - problema com aspas [RESOLVIDO]

Ian Brunelli
brunelli

(usa Arch Linux)

Enviado em 14/02/2013 - 13:11h

Ah sim, vou começar a adotar então. Tenho mania de usar aspas duplas. Rs
Valeu :D


8. Re: Gerar menu a partir de arquivo externo no dialog - problema com aspas [RESOLVIDO]

Perfil removido
removido

(usa Nenhuma)

Enviado em 14/02/2013 - 19:52h

brunelli escreveu:

Ah sim, vou começar a adotar então. Tenho mania de usar aspas duplas. Rs
Valeu :D


Mestre, a solução para este problema é:

$ cat itens.txt | xargs dialog --stdout --title "MENU" --clear --nocancel --menu "Escolha um item:" 0 0 0

Não esqueça de agradecer ao papai do shell (rsrsrs), Júlio Neves, ele deu a resposta.
Abraço.


9. Re: Gerar menu a partir de arquivo externo no dialog - problema com aspas [RESOLVIDO]

Ian Brunelli
brunelli

(usa Arch Linux)

Enviado em 14/02/2013 - 20:56h

pmartelotta escreveu:
Mestre, a solução para este problema é:

$ cat itens.txt | xargs dialog --stdout --title "MENU" --clear --nocancel --menu "Escolha um item:" 0 0 0

Não esqueça de agradecer ao papai do shell (rsrsrs), Júlio Neves, ele deu a resposta.
Abraço.

Uau!
Muito obrigado a você e ao Júlio Neves, problema resolvido!






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts