Darlon,

Vc pode usar as chaves para criar um bloco de codigo no shell corrente.


[ $# -le 1 ]|| { echo "mensagem" ; exit 1; }

ou, simplificando

erro() {
     echo "$@"
     exit 1
}

[ -z "${1}" ] && erro "mensagem"

Abraços.

On 2/27/07, Darlon Vasata <[EMAIL PROTECTED]> wrote:
> Tô fazendo um script e nele é checado o nro de parametros passados. Caso o nro
>  de parametros passados seja diferente de 1, o script deve mostrar uma
>  mensagem e sair.
>
>  #!/bin/bash
>
>  [ $# -le 1 ] || ( echo "Tente $0 <put | get>";  exit;)
>
>  echo "continuando...."
>
>  Pelo que percebi, isso nao funciona, porque acho que o exit sai do parenteses
>  (que é executado num sub-shell, eu acho).
>
>  Enfim..
>  Tem como fazer isso sem usar um if?
>                    



-- 
Tiago B Peczenyj
Linux User #405772

# cd /pub
# more beer

Responder a