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

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

Re: [shell-script] Valor padrão para parametro


From: William Alves dos Santos
Subject: Re: [shell-script] Valor padrão para parametro
Date: Fri, 26 Aug 2011 10:34:50 -0300

Viva a sinergia.

Mais uma vez agradeço a todos.

Abraços

*William Alves dos Santos*
**Cel.: +55 (11) 6835 8172

<address@hidden> <http://www.proatividadeweb.com>


Em 25 de agosto de 2011 11:41, Julio C. Neves <address@hidden>escreveu:

> **
>
>
> Fala Willian,
> em shell sempre existe algo mais simples. Eu faria assim:
>
> $ Parm=${1:-0}; Parm=$[Parm <= 20000 ? 20000 : Parm]
>
> A expressão ${...} é uma expansão de parâmetros e serve para o caso de vc
> não ter informado $1, nesse caso a variável $Parm receberia zero.
>
> A expressão $[...] é chamada de operador ternário e muito poucas pessoas o
> usam, pq não sabem o tamanho do galho que esses operadores quebram. Eles
> atuam com se fosse uma operação matemática condicional. Este cmd deveria
> ser
> lido da seguinte forma:
>
> Parm recebe: Se Parm menor ou igual a 20000, então (?) 20000, senão (:) o
> próprio Parm.
>
> O Shell é tão rico em soluções, que é provável que existam outras mais
> enxutas.
>
> Lembre-se: sempre desconfie de um script com mais de 10 linhas...;)
>
> Cordialmente,
>
> Julio Neves
> *Quer programar bem em Shell?
> *
>
> *Use este endereço de e-mail, o Skype ou ☎ (21)8112-9988 ☎*
>
> *
> *
>
> **
>
> *
> *
> My profiles: [image: Twitter] <http://twitter.com/juliobash>
> Contact me: [image: Skype] julioneves1
>
> Em 24 de agosto de 2011 23:10, williamalves1975br <
> address@hidden> escreveu:
>
> > **
> >
> >
> > #!/bin/bash
> >
> > #----------------------------------------------------------
> > # PARAMETRO PADRÃO 20000 Registros, do LOG para Analise
> > #----------------------------------------------------------
> > A fim de discutir, melhorar, evoluir, ensinar e claro aprender mais:
> >
> > Cheguei a uma validação simples no início do script, para definir um
> valor
> > padrão caso não se utilize algum parametro, ou definir o valor do
> parametro
> > se for maior que o padrão. Será que existe algo mais simples ainda?
> >
> > if [ $# -eq 0 ]; then
> > {
> > PARAMETRO=20000
> > }
> > else
> > {
> > if [ $1 -ge 20000 ]; then
> > {
> > PARAMETRO=$1
> > }
> > else
> > {
> > PARAMETRO=20000
> > }
> > fi
> > }
> > fi
> >
> > echo $PARAMETRO
> >
> >
> >
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>  
>


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



reply via email to

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