Outra sugestão:
echo 02 | awk '
function nome_do_mes(MM){
MM = MM + 0 # agora VIRE um NUMERO! eh uma ORDEM
print MM
mes="Jan Fev Mar Abr Mai Jun Jul Ago Set Out Nov Dez"
split(mes,nummes," ")
return nummes[MM]
}
{
nmes=$1
print nome_do_mes(nmes)
}'
On 11/28/06, Darlon <[EMAIL PROTECTED]> wrote:
> Opa.
>
> TUdo ok?
>
> Cara... eh o seguinte..
>
> eh soh fazer o shell reconhecer que vc está utilizando um numero ao inves de
> uma string.
>
> para isso eh soh colocar o numero assim:
>
> $(( <numero> ))
>
> ok?
>
> ficaria assim:
> ================
> echo $((02)) | awk '
> function nome_do_mes(MM){
> mes="Jan Fev Mar Abr Mai Jun Jul Ago Set Out Nov Dez"
> split(mes,nummes," ")
> return nummes[MM]
> }
> {
> nmes=$1
> print nome_do_mes(nmes)
> }'
> ================
>
> Agora vc pode colocar quantos 0's quiser, já que está trabalhando com números,
> e não com caracteres.
>
> Tenta ae!
>
> Falow.
>
> Em Terça 28 Novembro 2006 13:51, Ricardo Acosta escreveu:
> > Camaradas.
> > aqui estou novamente com duvidas na utilizacao do AWK.
> >
> > caso entendam que está fora do escopo da lista. fiquem a vontade para
> > advertir! Como tenho duvida a respeito, vou arriscar!rs!
> >
> > criei uma funcao no AWK.vejam:
> > ...
> > [EMAIL PROTECTED]: shell$ cat funcao.sh
> > #!/bin/bash
> > echo 2 | awk '
> > function nome_do_mes(MM){
> > mes="Jan Fev Mar Abr Mai Jun Jul Ago Set Out Nov Dez"
> > split(mes,nummes," ")
> > return nummes[MM]
> > }
> > {
> > nmes=$1
> > print nome_do_mes(nmes)
> > }'
> > ...
> >
> > ao executar tenho:
> > ...
> > [EMAIL PROTECTED]: shell$ ./funcao.sh
> > Fev
> > ...
> >
> > otimo. funciona perfeitamente, só que alterando para
> > "echo 02" ...em vez do... "echo 2"
> >
> > o resultado é nulo/vazio:
> > ...
> > [EMAIL PROTECTED]: shell$ ./funcao.sh
> >
> > ...
> >
> > alguém tem alguma dica...sobre como corrigir isso!?
> > ah! lembrando que a correção seja feita dentro do AWK.... pensei em
> > algo, ou alguma opcao q ele tenha de lidar com formatos.
> > pesquisei. e nao encontrei!
> >
> > []s
> > acosta
>
> --
>
>
> ----------------------------------------------------------------
> Darlon Vasata
> User Linux #430663
> My machines registered: Supersonic #335810
> ----------------------------------------------------------------
> Let's Code!
> ----------------------------------------------------------------
>
>
> ---------------------------------------------------------------------
> Esta lista não admite a abordagem de outras liguagens de programação, como
> perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio
> aviso.
> ---------------------------------------------------------------------
> Sair da lista: [EMAIL PROTECTED]
> ---------------------------------------------------------------------
> Esta lista é moderada de acordo com o previsto em
> http://www.listas-discussao.cjb.net
> ---------------------------------------------------------------------
> Servidor Newsgroup da lista: news.gmane.org
> Grupo: gmane.org.user-groups.programming.shell.brazil
>
>
> Links do Yahoo! Grupos
>
>
>
--
Tiago B Peczenyj
Linux User #405772
# cd /pub
# more beer