[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [shell-script] Renomear ip em vários arquivos dentro de uma pasta
From: |
Geovan |
Subject: |
Re: [shell-script] Renomear ip em vários arquivos dentro de uma pasta |
Date: |
Thu, 9 Aug 2007 08:55:28 -0300 |
Oi Júlio, e Thiago, desde já agradeço a atenção de vcs, Júlio vi que agora vcs
pegaram o sentido do problema, mas quando eu rodo o script, ele não muda os
ip´s dos arquivos, ele muda o paramentro do proprio script, olha só, modifiquei
ele para o seguinte:
#!/bin/bash
sed -i.velho 's/$192.168.0.1/$192.168.0.2/g' *
e executo dentro da pasta /var/named:
./script.sh 192.168.0.1 192.168.0.2, ele executa sem mostrar erro, porém quando
vou analisar se funcionou, ele criou os arquivos .velho do mesmo jeito do
original, mas não modificou os arquivos e mudou o script que agora ficou assim:
#!/bin/bash
sed -i.velho 's/$192.168.0.2/$192.168.0.2/g' *
fiz todo tipo de troca execução ele só faz a mudança dentro do script, ele muda
o script em vez dos arquivos.
----- Original Message -----
From: Julio C. Neves
To: address@hidden
Sent: Thursday, August 09, 2007 1:23 AM
Subject: Re: [shell-script] Renomear ip em vários arquivos dentro de uma pasta
Fala Geovan,
acho que vc está sendo pouco explícito, já qu no meu e-mail não apareceu
nada negritado (poucos nesta listas usam html nos e-mails). O Tiago chutou e
eu tb vou chutar. Vou supor que vc queira um script que troque todo IP
111.111.111.111 por 222.222.222.222 e vc passará ambos por parâmetros, isto
é, executatá o script da seguinte forma:
Prompt> script.sh 111.111.111.111 222.222.222.222
O para fazer isso em todos os arquivos do /var/named, faça como o Tiago
disse com pequenas alterações, veja:
Prompt> cat script.sh
#!/bin/bash
sed -i.velho 's/$1/$2/g' *
Pronto é só isso. Verifique se as alterações estão certas e em seguida faça:
Prompt> rm *.velho
--
Abraços,
Julio
http://www.julioneves.com - Um livro sobre Bash completo e on-line
:wq
Em 08/08/07, Geovan Martins <address@hidden> escreveu:
>
> Valeu pela dica Tiago, meu script já está assim, mas desse jeito vou ter
> que
> fazer isso com 680 dominios, na verdade não queria nada interativo, era
> algo
> assim ./script.sh /var/named e tcham! feito! em todos os 680 dominios, mas
> vou garimpar mais ainda, se tiver algo sobre essa expressão regular me
> avise
> valeu mesmo pela atenção.
>
> _____
>
> De: address@hidden <shell-script%40yahoogrupos.com.br>[mailto:
> address@hidden <shell-script%40yahoogrupos.com.br>]
> Em nome de Tiago Barcellos Peczenyj
> Enviada em: quarta-feira, 8 de agosto de 2007 21:50
> Para: address@hidden <shell-script%40yahoogrupos.com.br>
> Assunto: Re: [shell-script] Renomear ip em vários arquivos dentro de uma
> pasta
>
> dica
>
> sed -i.old 's/padrão/substituição/' arquivo
>
> desenvolva uma expressão regular que representa o que vc quer trocar e
> informe a string que vc quer que apareça nesse lugar e TCHIBUM, o sed faz
> o
> serviço.
>
> Agora, se vc quer algo interativo, que diga
>
> Oi, encontrei esse ip "127.99.88.1" , quer trocar por algo? [y/N] y
> Informe IP novo: 16.127.88.44
> Confirma? [Y/n] y
> ...
>
> Bom, teriamos que pensar um pouco. Impossível não é :)
>
> []´s Tiago
>
> On 8/8/07, Geovan Martins <g.martins@openinter
> <mailto:g.martins% <g.martins%25>40openinternet.com.br> net.com.br> wrote:
> >
> > OK, Thiago, vou ser o mais explicíto possível, a pasta é /var/named,
> > dentro dela existe os arquivos abaixo:
> > xxxxxxxx.com.br
> > yyyyyyyy.com.br
> > dddddddd.net.br
> > aaaaaaaa.gov.br
> > ssssssss.net.br, são mais de 650 dominios, abaixo segue seu conteudo:
> > #######################################################################
> > $TTL 1D
> > @ IN SOA xxxxxxxxx.xxxxxx.com.br.
> > webmaster.sssss.com.br. (
> > 2007080101 ; serial
> > 10800 ; refresh
> > 3600 ; retry
> > 604800 ; expire
> > 86400 ; default_ttl
> > )
> > IN NS sp1.oiruyrt.com.br.
> > IN NS sp2.oitrbfy.com.br.
> > pop3.xxxxx.net.br. IN CNAME yyyyyy.ggggg.com.br.
> > smtp.xxxxx.net.br. IN CNAME yyyyyy.ggggg.com.br.
> > www.xxxxx.net.br. IN CNAME fff.iiiii.com.br.
> > ftp.xxxxx.net.br. IN CNAME ssss.gdgdgdg.com.br.
> > xxxx.net.br. IN MX 10 pejnjndnf.jnjdfjk.com.br.
> > webmail IN CNAME jkjkgfgk.jdsfjknjkfj.com.br.
> > pis.xxxx.net.br. IN A 200.198.195.123
> > ping.xxxx.net.br. IN A 200.165.145.165
> > teste.xxxx.net.br. IN A 205.24.156.152
> > ######################################################
> > Agora, queria fazer um script que mudasse os ip´s negritados acima por
> > outros que eu escolher, mas isso quando eu especificar o ip ele tem que
> > varrer toda a pasta /var/named e todos arquivos que constam lá dentro e
> > o que tiverem com esses ip´s acima trocar por outros, um pouco
> > complicado né, preciso do seu conhecimento nesta tarefa herculear, e
> > agradeço desde já.
> >
> > Em Aug 08, 2007 08:22 PM, Tiago Barcellos Peczenyj escreveu:
> >
> > > de um exemplo do que vc gostaria de modificar.
> > >
> > > Assim, por alto, eu boiei.
> > >
> > > On 8/8/07, Geovan Martins wrote:
> > > >
> > > > Olá pessoal, gostaria que vcs me ajudassem na criação de um script
> > > > um
> > > > pouco
> > > > complexo! (eu acho),
> > > > tenho que modificar o ip de 600 dominios dentro da pasta /var/named/
> > > > (aquidentroexiste mais de 600 dominios) domino.com.br;) como seria a
> > > > síntaxe
> > > > de um script pra fazer isso tudo de uma vez só, desde já agradeço a
> > > > ajuda,
> > > > achei melhor não postar os scripts que fiz aqui, para não passar
> > > > vergonha....
> > > >
> > > >
> > > > [As partes desta mensagem que não continham texto foram removidas]
> > > >
> > > >
> > > >
> > >
> > >
> > >
> > > --
> > > Tiago B Peczenyj
> > > Linux User #405772
> > >
> > > http://peczenyj. <http://peczenyj.blogspot.com/> blogspot.com/
> > >
> > >
> > > [As partes desta mensagem que não continham texto foram removidas]
> > >
> >
> > __________________________________________________________
> > Desde 1997 prestando serviços 5 estrelas.
> >
> > Geovan Martins
> > Analista de Suporte
> > g.martins@openinter <mailto:g.martins% <g.martins%25>40openinternet.
> com.br> net.com.br
> <g.martins%40openinternet.com.br>
> > 61 3328-1990
> >
> >
> >
>
> --
> Tiago B Peczenyj
> Linux User #405772
>
> http://peczenyj. <http://peczenyj.blogspot.com/> blogspot.com/
>
> [As partes desta mensagem que não continham texto foram removidas]
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>
>
--
Abraços,
Julio
http://www.julioneves.com - Um livro sobre Bash completo e on-line
:wq
[As partes desta mensagem que não continham texto foram removidas]
[As partes desta mensagem que não continham texto foram removidas]