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: Julio C. Neves
Subject: Re: [shell-script] Adicionar conteúdo de variável em arquivos que referenciam outros arquivos
Date: Tue, 19 Mar 2013 13:28:55 -0300

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]



reply via email to

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