Hummm Versao 1) Versão kung-fu $ manda_brasa(){ eval "$1=(${2//:/ })" }
$manda_brasa array "historias:que:nossas:babas:nao:contavam" $echo ${array[0]} historias $ echo ${array[1]} que $ echo ${array[2]} nossas $ echo [EMAIL PROTECTED] 6 Versao 2) Agora escapando os espacos em branco! manda_brasa(){ A=${2// /\\ } eval "$1=(${A//:/ })" } $ manda_brasa array "historias que nossas:babas:nao:contavam" $ echo ${array[0]} historias que nossas $ echo [EMAIL PROTECTED] 4 Serve? 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!!! > > 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> > > 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 --------------------------------------------------------------------- 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