Fala Fernando,
já vi muita gente boa "quebrar a cara" por causa de testes de opções. A
coisa é bem mais complexa que parece e o problema não é gerado pela qtd de
opções, mas sim pelas suas combinações, isto é, algumas opções precisam
parâmetros (ex. paste -d: arq1 arq2), outras não (ex: paste -s arq1).
Algumas podem vir agrupadas (paste -s -d: arq1), outras podem vir juntas
(ex: paste -sd: arq1). E mais outras possibilidades...

Por causa deste grau de complexidade é que existe uma instrução (em shell e
em C) feita justamente para analise das opções passadas. Chama-se getopts, é
pouco conhecida, mas
aqui<https://wiki.softwarelivre.org/TWikiBar/TWikiBarPapo010#Comando_getopts>vc
encontra a sua descrição e um monte de exemplos simples de entender e
no
bom e velho português.

Abraços,
Julio
Cursos de Shell e Zenity em 2 fins de semana?
- Em SP ligue (11) 2125-4747 Curso de 07 a 11/12;
- Em DF ligue (61) 3223-3000 Curso de zenity 09-10/01;
- No RJ ligue (21) 2561-0867. Curso nos dias 5,6,12,13/12;
- Turmas fechadas em outras cidades ligue (21) 8112-9988.


2009/11/26 Fernando Brombatti <[email protected]>

>
>
> Estou querendo montar um script onde eu informo uma listagem de parâmetros.
> Esses parâmetros serão os itens que eu querei executar.
> No decorrer do script terei um CASE ou IF que verificaria se, na variável
> LISTAGEM, existe o parâmetro em questão para executar algum comando.
>
> Exemplo de algoritmo:
> LISTAGEM="memoria disco tempo"
> CASE
> CASE $LISTAGEM possui memoria
> ECHO "TEM MEMORIA"
> CASE $LISTAGEM possui diso
> ECHO "TEM DISCO"
> CASE $LISTAGEM possui tempo
> ECHO "TEM TEMPO"
> CASE $LISTAGEM nao possui nenhum
> ECHO "NAO TEM NADA"
> ESAC
>
> Qual a forma ideal para fazer isso?
> a) CASE ou IF?
> b) Como eu verificaria, da forma mais instantânea (e mais elegante
> possível)
> se o item do CASE/IF consta na listagem?
>
> Flw.
>
> --
> Fernando Brombatti
> email-msn-gtalk-skype:
> [email protected] <brombatti%40gmail.com>
> work: +55 54 3218-6060
> home: +55 54 3028-7217
> mobile: +55 54 9189-7970
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>  
>


[As partes desta mensagem que não continham texto foram removidas]



------------------------------------

---------------------------------------------------------------------
Esta lista não admite a abordagem de outras liguagens de programação, como 
perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio 
aviso.
---------------------------------------------------------------------
Sair da lista: [email protected]
---------------------------------------------------------------------
Esta lista é moderada de acordo com o previsto em 
http://www.listas-discussao.cjb.net
---------------------------------------------------------------------
Servidor Newsgroup da lista: news.gmane.org
Grupo: gmane.org.user-groups.programming.shell.brazil

Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
    http://br.groups.yahoo.com/group/shell-script/

<*> Para sair deste grupo, envie um e-mail para:
    [email protected]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
    http://br.yahoo.com/info/utos.html


Responder a