[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: [shell-script] Uso de Funcões em shell ?
From: |
MrBiTs |
Subject: |
RE: [shell-script] Uso de Funcões em shell ? |
Date: |
Fri, 17 Dec 2004 17:02:42 -0200 |
<QUOTE>
Na verdade os 3 echos vão ser direcionados para a tela de saida...
Para retornar ele tu tinha que mudar a tua saida padrão para uma variavel e
chamar ele como:
result=$(funcao felipe 26 programador)
os 3 echos iam estar contidos dentro de $result
foi mal ae a resposta errada
Se escrevi outra bobagem por favor me corrijam ;-)
</QUOTE>
Ola, Felipe
Voce nunca escreve bobagens :)
A grande duvida é: Voce pode usar espacos no nome da funcao ? Vamos ver:
[root@oas root]# cat d.sh
#!/bin/bash
minha funcao ()
{
echo $1
echo $2
echo $3
}
result=$(funcao parametro1 parametro2 parametro3)
echo $result
Esse é o arquivo. Executando-o
[root@oas root]# bash ./d.sh
./d.sh: line 3: syntax error near unexpected token `()'
./d.sh: line 3: `minha funcao ()'
Agora, vou tirar o "minha espaco"
[root@oas root]# cat d.sh
#!/bin/bash
funcao ()
{
echo $1
echo $2
echo $3
}
result=$(funcao parametro1 parametro2 parametro3)
echo $result
E executa-lo
[root@oas root]# bash ./d.sh
parametro1 parametro2 parametro3
Ou seja, nao podemos usar espacos no nome da funcao.
Fica ai a ideia de testes com caracteres especiais e outros bichos feios
para o pessoal definir nomenclatura de funcoes.
Ah sim, sempre lembrando que funcoes sao definidas ANTES do processamento
principal de um shell script. Veja o 3o exemplo:
[root@oas root]# cat d.sh
#!/bin/bash
result=$(funcao parametro1 parametro2 parametro3)
echo $result
funcao ()
{
echo $1
echo $2
echo $3
}
[root@oas root]# bash ./d.sh
./d.sh: funcao: command not found
[]'s
Re: [shell-script] Uso de Funcões em shell ?, Ricardo de Lima e Souza, 2004/12/17
Re: [shell-script] Uso de Funcões em shell ?, Fernando Lemes da Silva, 2004/12/17
Re: [shell-script] Uso de Funcões em shell ?, Aurelio Marinho Jargas, 2004/12/17