shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] Adicionar conteúdo de variável em arquivos que refere


From: Carlos Adean
Subject: Re: [shell-script] Adicionar conteúdo de variável em arquivos que referenciam outros arquivos
Date: Tue, 19 Mar 2013 14:04:26 -0300

Verdade!

De qualquer forma, mais uma vez agradeço a ajuda.

Abcs,


--
Att.
Carlos Adean
skype: carlosadean | fb.com/carlosadean

"There are only 10 types of people in the world: Those who understand
binary, and those who don't."


Em 19 de março de 2013 13:28, Julio C. Neves <address@hidden> escreveu:
> Mas isso não é uma solução em Shell. Vc chamou o interpretador perl e,
> nesse momento, a tua linux estava administrando, no mínimo, 3
> interpretadores (2 shell e um perl).
>
> Considero uma solução dessas digna da M$, que não se importa nem um pouco
> com o consumo de hw. ;)
>
> Abcs,
> Julio
> *@juliobash
> *
>
>
>
> Em 19 de março de 2013 11:58, Carlos Adean <address@hidden> escreveu:
>
>> **
>>
>>
>> Julio,
>>
>> Muito obrigado pela ajuda! Como eu disse no primeiro email, não
>> conseguiria sozinho.
>>
>> Uma outra solução (dica de uma colega de trabalho):
>>
>> VAR=/CAMINHO
>> find /triledir -name '*.dat' -print0 | xargs -0 perl -i -p -e 'if
>> (/.*\.dat/) { s:(\S+\.dat):\$VAR/$1:g; }'
>>
>> Abcs
>>
>> --
>> Att.
>> Carlos Adean
>>
>> Em 14 de março de 2013 23:26, Carlos Adean <address@hidden>
>> escreveu:
>> > Olá Julio,
>> >
>> > Desde já obrigado por responder.
>> >
>> > Mencionei a 1a e a última linha apenas para exemplificar o que eu
>> > preciso, as escolhi aleatoriamente. Essas cinco linhas foram copiadas
>> > de um arquivo .dat qualquer.
>> >
>> > Aproveitando a numeração que você colocou, na linha quatro tenho um
>> > exemplo de dois arquivos sendo referenciados.
>> >
>> > resumindo...
>> >
>> > VAR=/CAMINHO_COMUM/
>> >
>> > Nos arquivos encontro o conteúdo abaixo:
>> > 1 isotrack/final/pne_wd_test.dat # kind_postagb, file_postagb DA
>> > VERIFICARE file_postagb
>> > 0 tab_ifmr/weidemann.dat # ifmr_kind, file with ifmr
>> > 1 isotrack/griglie_tutto_corr.dat isotrack/bassazams_mista.dat
>> > #kind_tracks, file_isotrack, file_lowzams
>> > 0.019 bc_odfnew/corot/c_p00.dat
>> >
>> > Preciso que fiquem assim:
>> > 1 /CAMINHO_COMUM/isotrack/final/pne_wd_test.dat # kind_postagb,
>> file_postagb DA
>> > VERIFICARE file_postagb
>> > 0 /CAMINHO_COMUM/tab_ifmr/weidemann.dat # ifmr_kind, file with ifmr
>> > 1 /CAMINHO_COMUM/isotrack/griglie_tutto_corr.dat
>> > /CAMINHO_COMUM/isotrack/bassazams_mista.dat
>> > #kind_tracks, file_isotrack, file_lowzams
>> > 0.019 /CAMINHO_COMUM/bc_odfnew/corot/c_p00.dat
>> >
>> >
>> > --
>> > Att.
>> > Carlos Adean
>> > skype: carlosadean | fb.com/carlosadean
>> >
>> >
>> >
>> > Em 14 de março de 2013 22:38, Julio C. Neves <address@hidden>
>> escreveu:
>> >> Carlos,
>> >> Veja isso:
>> >> $ echo '#From dust/RFp00gra70.dat :
>> >> #From dust/RFp00g
>> >> 1 isotrack/final/pne_wd_test.dat # kind_postagb, file_postagb DA
>> >> VERIFICARE file_postagb
>> >> 0 tab_ifmr/weidemann.dat # ifmr_kind, file with ifmr
>> >> 1 isotrack/griglie_tutto_corr.dat isotrack/bassazams_mista.dat
>> >> #kind_tracks, file_isotrack, file_lowzams
>> >> 0.019bc_odfnew/corot/bc_p00.dat' | grep -F .dat | cat -n
>> >> 1 #From dust/RFp00gra70.dat :
>> >> 2 1 isotrack/final/pne_wd_test.dat # kind_postagb, file_postagb DA
>> >> 3 0 tab_ifmr/weidemann.dat # ifmr_kind, file with ifmr
>> >> 4 1 isotrack/griglie_tutto_corr.dat isotrack/bassazams_mista.dat
>> >> 5 0.019bc_odfnew/corot/bc_p00.dat
>> >>
>> >> Ou seja 5 linhas possuem .dat, mas vc só mencionou a 1a. e a última.
>> >>
>> >> Abcs,
>> >> Julio
>> >> *@juliobash*
>> >>
>> >> *Próximos Cursos de Shell*
>> >>
>> >> *Cidade*
>> >>
>> >> *Data Início*
>> >>
>> >> *Local*
>> >>
>> >> Curitiba
>> >>
>> >> 04/03
>> >>
>> >> SoftSell<
>> http://www2.softsell.com.br/?system=treinamentos&id=323&action=read>
>> >>
>> >> Recife
>> >>
>> >> 01/04
>> >>
>> >> Fuctura <http://www.fuctura.com.br/cursos/curso-de-shell-scripts/>
>> >>
>> >>
>> >>
>> >> Em 14 de março de 2013 16:19, Carlos Adean <address@hidden>
>> escreveu:
>> >>
>> >>> **
>> >>>
>> >>>
>> >>> Salve,
>> >>> Caros
>> >>>
>> >>> Estou com um problema interessante e que não consigo resolver sozinho,
>> >>> apesar de saber me virar com shell script.
>> >>>
>> >>> Tenho um aplicativo que lê umas centenas de arquivos auxiliares .dat,
>> >>> que na verdade são texto puro. O problema é que só consigo executar
>> >>> tal aplicativo se estiver no mesmo diretório que o seus auxiliares,
>> >>> pois o caminho para a maioria destes arquivos é referenciado dentro
>> >>> deles mesmos, um referencia outro e isso não ocorre com todos.
>> >>>
>> >>> Preciso incluir à frente do PATH de cada arquivo referenciado, o
>> >>> conteúdo de uma variável de ambiente que aponte para um lugar comum a
>> >>> todos eles, porém, com uma condição. Só serão alterados aqueles que
>> >>> fazem referência a outro arquivo, ou seja, aqueles que contém '.dat'
>> >>> em seu interior. Atualmente eles ficam em diversos subdiretórios
>> >>> abaixo do diretório principal do aplicativo.
>> >>>
>> >>> Existe outro porém, como vocês podem ver abaixo, o conteúdo dos
>> >>> arquivos não segue um padrão e em algumas linhas encontramos
>> >>> referência a dois arquivos .dat.
>> >>>
>> >>> [cadean@hosted trilegal]$ find . -name '*.dat' -print0 | xargs -0 cat
>> >>> | grep .dat
>> >>>
>> >>> #From dust/RFp00gra70.dat :
>> >>> #From dust/RFp00g
>> >>> 1 isotrack/final/pne_wd_test.dat # kind_postagb, file_postagb DA
>> >>> VERIFICARE file_postagb
>> >>> 0 tab_ifmr/weidemann.dat # ifmr_kind, file with ifmr
>> >>> 1 isotrack/griglie_tutto_corr.dat isotrack/bassazams_mista.dat
>> >>> #kind_tracks, file_isotrack, file_lowzams
>> >>> 0.019 bc_odfnew/corot/bc_p00.dat
>> >>>
>> >>> A título de exemplo pegando a primeira e a última linha, então ficaria:
>> >>> VAR=/caminho_comum/
>> >>>
>> >>> #From /caminho_comum/dust/RFp00gra70.dat
>> >>> 0.019 /caminho_comum/bc_odfnew/corot/bc_p00.dat
>> >>>
>> >>> desde já obrigado.
>> >>>
>> >>> --
>> >>> Att.
>> >>> Carlos Adean
>> >>> skype: carlosadean | fb.com/carlosadean
>> >>>
>> >>> "There are only 10 types of people in the world: Those who understand
>> >>> binary, and those who don't."
>> >>>
>> >>>
>> >>
>> >>
>> >> [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: address@hidden
>> >> ----------------------------------------------------------
>> >> 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
>> >>
>> >>
>>
>>
>
>
> [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: address@hidden
> ---------------------------------------------------------------------
> 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
>
>


reply via email to

[Prev in Thread] Current Thread [Next in Thread]