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

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

Re: [shell-script] duvida funções


From: MrBiTs
Subject: Re: [shell-script] duvida funções
Date: Fri, 12 Feb 2010 11:52:15 -0200
User-agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.9pre) Gecko/20100210 Lightning/1.0b1 Shredder/3.0.2pre

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

On 02/12/2010 10:35 AM, Thiago Diniz da Silveira wrote:
> Na verdade você não precisa dizer quantos parametros serão passado, dentro
> da função vc deve fazer um controle.
> 
> $# serve para saber a quantidade de parametros passado, $1 acessa o primeiro
> $2 acessa o segundo e assim adiante.
> 
> $* mostra todos os parametros, no exemplo do MrBiTs aparecera na tela: "
> "isso e" uma mensagem "
> mas são diversos parametros diferentes.

Exatamente. $* mostrará todos os parâmetros passados, independente de sua 
quantidade.

Se precisar tratar uma quantidade não sabida de parâmetros, o shift sempre 
ajuda.

E a mensagem que será mostrada é

isso e uma mensagem

sem as aspas. As aspas vão dizer à função para entender "isso e" ser 
interpretado como um único parâmetro.

Tem que demonstrar, então vejamos:

#!/bin/bash

teste() {
        echo "Parametro 1: $1"
        echo "Parametro 2: $2"
        echo "Quantidade: $#"
        echo "Todos os parametros: $*"
}

teste "Isso e" uma mensagem


Saída:
Parametro 1: Isso e
Parametro 2: uma
Quantidade: 3
Todos os parametros: Isso e uma mensagem


- -- 

Um abraço

.0. MrBiTs - address@hidden
..0 GnuPG  - 
http://pgp.mit.edu:11371/pks/lookup?op=get&search=0x6EC818FC2B3CA5AB
000 http://www.mrbits.com.br


-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)

iQEcBAEBCAAGBQJLdV0PAAoJEG7IGPwrPKWrJDAIALPiuWlc84NQJrUlPgB8kttw
60b5053YjLuUulMh6C1yKwv1zDd87eLedpbzZtEMBUaX0ZUsYqIytHShOJdHei14
uovo4YUEx3DEhp2PnT5R9gMrz2RvR24+jCA9ZiSD7x+yC6FBTXFoJkXFtbxO/VNZ
9pdSuyF/bk6/bk/uQsVsoyAsHUyPBQq4glPNBm4lXSuyO/8zJlN7utybf7PVBXH6
50SVITSAaw4fnei8h59QJif3F7ydnRtkN2QmPG/fZ/W1k2A21uxsRTzAM+ZNa4R9
mGFHUHrQqd8UUtEA0V/xoEYLPW1zGk9HDGwLtcLy84HopmSp4XULQgtoorZMkI8=
=1fjK
-----END PGP SIGNATURE-----


reply via email to

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