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

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

Re: [shell-script] Getopts


From: Fabiano Caixeta Duarte
Subject: Re: [shell-script] Getopts
Date: Sun, 21 May 2006 10:20:00 -0300
User-agent: Thunderbird 1.5 (X11/20051201)

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Ricardo,

Aquela url se trata de uma dica que enviei ao Dicas-l, cujo conteúdo
termina com um script de exemplo em que eu faço algo semelhante ao que
você precisa.

Então sejamos mais explícitos. A solução está composta em duas partes.

1) Você preenche uma variável para cada opção passada pelo usuário
2) Você faz testes lógicos de conteúdo destas variáveis de forma a ter
certeza que o conjunto de variáveis certas foi passado para o script.

Extrato exemplo da técnica

VERBOSE=0
QUIET=0

while getopts hvqs:c: OPT; do
  case $OPT in
    "v") VERBOSE=1;;
    "q") QUIET=1;;
    ...
  esac
done

[ $VERBOSE -eq 1 -a $QUIET -eq 1 ] && usage


Onde usage é a função que exibe ajuda e encerra a execução do script.

Abraços!

Fabiano Caixeta Duarte
Consultor em soluções para Redes de Computadores
Linux User #195299
Ribeirão Preto - SP


Ricardo A. Reis escreveu:
>> -v -s .... ou -vs ..... ou -s ... -v
>>> -q -s .... ou -qs ..... ou -s ... -q
>>> -v -c .... ou -vc ..... ou -c ... -v
>>> -q -c .... ou -qc ..... ou -c ... -q
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.7 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFEcGkA++b4Zs4fOnMRAjnfAJwJ1lzTN1gQ9sCa31Bek3JPsDWpvwCghfw7
s4D0I8iYPCD21u/pZy/gU74=
=WWTo
-----END PGP SIGNATURE-----


reply via email to

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