> > On 7/25/06, Jorge Pereira <[EMAIL PROTECTED]> wrote: > > Meu deus amigos do mundo bash!!! que confusão!!!!!!!!!!!!!!!! > > > > eu preciso apenas disto. > > > > _minhafuncao "teste" "eu:quero:isto:neste:valor:teste" > > > > echo ${teste[0]} > > echo ${teste[1]} > > echo ${teste[2]} > > echo ${teste[3]} > > > > entende? preciso que la na função ela consiga declarar um valor e se > torne > > global para eu acessar do script que chamou ela, so isto!! :P > > eu havia feito assim olha. > > > > # @func: _explode() > > # @Return: Array > > # @Args: argv[1]="token", argv[2]="arrayname", argv[3]="String" > > # @Desc: Make array of token in string (argv[3]) > > # @Author: Jorge Pereira > > function _explode(){ > > local n=0 > > _arrayName="${1}" > > _token="${2}" > > _buffer="${3}" > > > > for _strtmp in $(echo "${_buffer}" | tr "${_token}" " ") > > do { > > eval "${_arrayName}[${n}]="${_strtmp}"" > > let n=n+1 > > } done > > } > > > > sacaram? > > Julio, grande "Mestre dos magos" do shell!!! sei que você tem alguma > forma > > ninja de resolver isto, basta uma sugestão!!! >
Grande só se for em volume :) Numtôtindendendo! a sua função funciona (sem trocadilhos). Veja só: $ cat arr # @func: _explode() # @Return: Array # @Args: argv[1]="token", argv[2]="arrayname",argv[3]="String" # @Desc: Make array of token in string (argv[3]) # @Author: Jorge Pereira function _explode(){ local n=0 _arrayName="${1}" _token="${2}" _buffer="${3}" for _strtmp in $(echo "${_buffer}" | tr "${_token}" " ") do { eval "${_arrayName}[${n}]="${_strtmp}"" let n=n+1 } done } _explode "teste" : "eu:quero:isto:neste:valor:teste" echo [EMAIL PROTECTED] eval echo \${$_arrayName[0]} eval echo \${$_arrayName[1]} eval echo \${$_arrayName[2]} $ ./arr eu quero isto neste valor teste eu quero isto Não dá para entender a sua agonia. Só inseri as últimas 4 linhas no seu script para chamar a função e mostrar os valores assumidos na variável passada como parâmentro. Abraços, Julio :wq > > > while : > > do > > echo "HELPEEEEEEEEEEEEEEEEEE" > > done > > > > []s > > > > > > On 7/25/06, Julio C. Neves <[EMAIL PROTECTED]> wrote: > > > > > > Aê Fernando, > > > Se é para pegar de uma variável podemos usar Here Strings: > > > > > > $ frutas="pera uva maçã" > > > $ read f1 f2 f3 <<< "$frutas" > > > $ echo $f1 > > > pera > > > $ echo $f2 > > > uva > > > $ echo $f3 > > > maçã > > > > > > Se é para ler arquivos comportados (como vc falou), suponha que este > > > arquivo > > > tem 3 colunas separadas por espaços em branco. Então a melhor forma de > > > lê-lo > > > seria: > > > > > > while read c1 c2 c3 > > > do > > > echo $c1 > > > echo $c2 > > > echo $c3 > > > done < arquivo > > > > > > Abração > > > Julio (chegando agora das férias) > > > > > > Cumequié Tiago? Existem 1000 maneiras invente a sua :)) É isso??? > > > > > > > > > 2006/7/24, Fernando Lemes da Silva <[EMAIL PROTECTED]>: > > > > > > > > > > > > > > > Olá Fernando, > > > > > > > > Sim... mas é que eu quero ler uma linha de um arquivo que pode > conter > > > > um ou > > > > mais items.. e é mais facil eu usar o "set -" (pois os campos são > "bem > > > > comportados", ou seja, não contém espaços) e usar um while e shift > para > > > > percorrer a lista.. (também fiz com cut, mas deu mais trabalho...) > > > > > > > > []'s > > > > > > > > -- > > > > 0010111100101010010100110100100101000111 > > > > Fernando LEMES da Silva > > > > M$N: ferlemes AT yahoo com br > > > > www.koho.com.br (0x53E56DAA) > > > > 0101001101001001010001110010101000101111 > > > > > > > > > > > > Em Segunda 24 Julho 2006 18:05, Fernando Zank escreveu: > > > > > Desculpa se eu estiver falando besteira, mas não tenho muita > > > experiência > > > > > com o comando 'cut', mas você não poderia usar o cut e passar o > espaço > > > > como > > > > > delimitador ? > > > > > > > > > > > > > > > > > > > > -- > > > [ ]s, > > > Julio (http://www.julioneves.com) <http://www.julioneves.com%29> < > http://www.julioneves.com%29> > > > Participe do 4o CONISLI - Congresso Internacional de Software Livre, > dias > > > 7 a 11 de novembro - SESC Vila Mariana - SP > > > www.conisli.org > > > > > > > > > > > > [As partes desta mensagem que não continham texto foram removidas] > > > > > > > > > > > > > > > > > -- > > Regards, > > + > > > ---------------------------------------------------------------------------------+ > > Jorge Pereira, From: Olinda/Pe/Brazil > > Home: http://www.jorgepereira.com.br/ > > E-mail: [EMAIL PROTECTED], [EMAIL PROTECTED] > > Mobile: +55 (81) 8833-2484 > > My Public Key: http://www.jorgepereira.com.br/public.pgp > > + > > > ---------------------------------------------------------------------------------+ > > "Se você ama alguma coisa, liberte-a; > > Se ela não voltar a ti, cace-a e mate-a." > > > +----------------------------------------------------------------------------------+ > > > > > > [As partes desta mensagem que não continham texto foram removidas] > > > > > > > > --------------------------------------------------------------------- > > 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 > > > -- [ ]s, Julio (http://www.julioneves.com) Participe do 4o CONISLI - Congresso Internacional de Software Livre, dias 7 a 11 de novembro - SESC Vila Mariana - SP www.conisli.org [As partes desta mensagem que não continham texto foram removidas] --------------------------------------------------------------------- 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 <*> Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/shell-script/ <*> Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] <*> O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html