Pular para o conteúdo

O que há de errado com a função que eu criei??

Responder tópico
  • Denunciar
  • Indicar

1. O que há de errado com a função que eu criei??

Enviado em 19/03/2010 - 20:02h

Fala galera!!!
estou criando um shell script com a seguinte função:

#!/bin/bash
function () {
echo "teste"
}

já dei permissão mas não funciona!! existe algo de errado???
o estranho que quando eu faço assim funciona:

#!/bin/bash
function menu () {
echo "teste"
}
menu

a minha dúvida é: só funciona quando se coloca o "menu"??
teoricamente acho que não!!
alguém pode me ajudar??

Responder tópico

2. Re: O que há de errado com a função que eu criei??

Enviado em 19/03/2010 - 20:29h

não se pode usar function como nome de uma função, pode ser reservada, no segundo exemplo funcionou porque voce chamou a função menu, tente chamar a função "function" se não der serto coloque outro nome, exemplo:

#!/bin/bash
funcao() {
echo "deu certo!"
}
funcao;

3. Re: O que há de errado com a função que eu criei??

Enviado em 21/03/2010 - 21:33h

Outra boa dica é vc usar letras maiúsculas para nomear suas funções, pois se destacam em seu script permitindo melhor visualização.
Ex:
TESTE()
{
echo "Deu certo"
}
TESTE

4. Re: O que há de errado com a função que eu criei??

Enviado em 22/03/2010 - 00:31h

Faço assim:

#!/bin/bash

function _nome_funcao(){
echo 'Eu sou uma funcão';
}


function _NmFunc(){

echo 'Identificador da funcão em CamelCase';

}

_nome_da_funcao;
_NmFunc;

exit

Veja que você deve chamar a sua funcão porque ela guarda seus comandos em uma subshell do seu script.

Isso funciona como um objeto, ou seja, um comando composto que recebe novos parametros posicionais tal como um comando já existente do shell.

5. Re: O que há de errado com a função que eu criei??

Enviado em 22/03/2010 - 12:04h

O problema é que você não evocou a sua função ... entenda a função como um script a parte ... esta só será executada se voc^ chamá-la.

#!/bin/bash
function () {
echo "teste"
}
function

vai funcionar ... mas eu aconselho nem botar o nome de function pra não confundir ... coloque o nome que te indique o que ela faz:

#!/bin/bash
menu () {
echo "teste"
}
menu


6. nome

Enviado em 22/03/2010 - 23:25h

vc não acha que precisa dar um nome à função?

Responder tópico

Responder tópico

Entre na sua conta para responder.

Fazer login para responder