Re: [shell-script] funcoes-no-awk

2006-11-28 Por tôpico Tiago Barcellos Peczenyj
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:

Re: [shell-script] funcoes-no-awk

2006-11-28 Por tôpico Ricardo Acosta
valeu Jr. nao conhecia esta funcao: strtonum jah estah na minha lista de funcoes! []s acosta 2006/11/28, edjunior <[EMAIL PROTECTED]>: > hey, > > (mudando o mínimo da sua chamada em awk) > > onde aparece: > nmes=$1 > pode substituir por: > nmes=strtonum($1) > > Parece que o erro se en

Re: [shell-script] funcoes-no-awk

2006-11-28 Por tôpico Ricardo Acosta
opa Darlon! valeu a dica! a solução fora do SHELL realmente funciona! no entanto. eu obtenho a STRING utilizando a funcao..do AWK. chamada SUBSTR retirado do livro do Julio Neves - 6ed.: substr(c1,p,n) - Retorna a subcadeia que comeca na posicao "p" de "c1" com "n" caracteres portanto.precisava u

Re: [shell-script] funcoes-no-awk

2006-11-28 Por tôpico Darlon
Já pedindo desculpas... Resolvi fora do awk, e vc tinha pedido pra resolver dentro. Ok. Como no awk os indices podem ser literais ( e na verdade sao), ele não dá erro... mas no seu script, vc pode realizar uma operação sobre o parãmetro passado pra ele deixar de ser um literal. É meio que uma "g

Re: [shell-script] funcoes-no-awk

2006-11-28 Por tôpico edjunior
hey, (mudando o mínimo da sua chamada em awk) onde aparece: nmes=$1 pode substituir por: nmes=strtonum($1) Parece que o erro se encontrava nessa variavel que você utilizará como índice do seu vetor de meses, pois em awk, os índices de array podem ser strings de caracteres. hasta! jr.

Re: [shell-script] funcoes-no-awk

2006-11-28 Por tôpico Darlon
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: $(( )) ok? ficaria assim: echo $((02)) | awk ' function nome_do_mes(MM){ mes="Jan Fev Mar Abr