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

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

wanderson ferreira bastos
wanderson.bastos

(usa Debian)

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??


  


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

mazin
mazinsw

(usa Ubuntu)

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??

Alexandre Gonçalves Monteiro da Silva
alexandregms

(usa Ubuntu)

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??

Perfil removido
removido

(usa Nenhuma)

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??

DAVISON MARCEL PASQUALINI
fdmarp

(usa Debian)

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

Juliao Junior
juliaojunior

(usa Debian)

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

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