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

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

Re: [shell-script] testar se parametro $1 foi passado


From: Tiago Barcellos Peczenyj
Subject: Re: [shell-script] testar se parametro $1 foi passado
Date: Mon, 17 Mar 2008 18:32:19 -0300

Vc poderia testar se o valor da variavel $# é igual a 0.

$# é a quantidade de parâmetros passados para o script ou função

ex:

$ cat ./test.sh
echo $#

$ ./test.sh 1 2 3
3

$ ./test.sh
0


2008/3/17 Adelson O. Junior <address@hidden>:
>
>
>
>
>
>
> Pessoal,
>  Obrigado pela contribuição da mensagem anterior.
>
>  Minha dúvida agora é essa: como testo se um parametro ($1) foi realmente
>  passado para um script na linha de comando?
>  Tenho o script montado, rodando. Ele funciona corretamente com os
> parametros
>  -s -f -t, agora se nao passo parametro ele fica em loop. Queria testar se
>  foi passado algum parametro, se não foi imprimir um erro..
>
>  Um trecho:
>
>  while getopts " ht:f:s:V" OPT; do
>  case $OPT in
>  "h") echo -e "usage:
>  -t <to> Input the caller username/DID\n
>  -f <from> Input the callee username/DID\n
>  -s <server.log> Input the serverlog file\n
>  example:
>  ./catchcalls -t ajunior -f rzedan -s server.log.2008-03-17-03
>  PS: server.log.* must to be ungziped before. \n" && exit 1;;
>  "t") TO=$OPTARG;;
>  "f") FROM=$OPTARG;;
>  "s") ARQ=$OPTARG;;
>  "V") echo -e "getcall.sh script is a part of Support Toolkit version
>  0.1 Beta\n" && exit 1;;
>  *) echo -e "Invalid option \n usage: ./catchcall -s <server.log> -t
>  <to> -f <from>\n" && exit 1;;
>  esac
>  done
>
>  Obrigado.
>
>  [As partes desta mensagem que não continham texto foram removidas]
>
>  



-- 
Tiago B Peczenyj
Linux User #405772

http://peczenyj.blogspot.com/
"what does not kill us makes us stronger"


reply via email to

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