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

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

Fw: [shell-script] Re: Altera um ip em um arquivo utilizando script?


From: Thiago Corteletti
Subject: Fw: [shell-script] Re: Altera um ip em um arquivo utilizando script?
Date: Sat, 22 Apr 2006 08:50:06 -0300

Seguindo o exemplo do outro tiago... penso q poderias fazer assim

Se vc tem uma linha assim:
a;00:00:00:00:00:00;10.1.1.2;Bruno
e gostaria de alterar para
b;00:00:00:00:00:00;10.1.1.2;Bruno

sed '/10.1.1.2/ s/a\;/b\;/g' arquivo > arquivoNew 

mv ArquivoNew arquivo

onde tiver a; passar para b; ... coloca-se a \ ... a\; o ponto e virgula é 
usado no sed em alguns casos como separador de comandos... ai pra naum 
confundir usa a barra invertida 
passando a saida do comando sed para um outro arquivo (arquivoNew)... pois o 
sed por si só nao altera o arquivo ... só exibe como ficaria o arquivo, por fim 
renomeia o arquivoNew pra arquivo... ficando assim o arquivo com seu conteúdo 
alterado...
Não da pra passar a saida do sed pro mesmo arquivo.... sed '/10.1.1.2/ 
s/a\;/b\;/g' arquivo > arquivo ... se fizer isso perde o contéudo do arquivo


att.

Thiago


----- Original Message ----- 
From: Good_speed - Erik P. ghijs 
To: address@hidden 
Sent: Friday, April 21, 2006 11:32 AM
Subject: [shell-script] Re: Altera um ip em um arquivo utilizando script?


Oi Tiago,

Cara o que estou querendo fazer e modificar um campo especifico.

Por exemplo:
a;00:00:00:00:00:00;10.1.1.2;Alfredo
a;00:00:00:00:00:00;10.1.1.3;Ricardo
a;00:00:00:00:00:00;10.1.1.4;Bruno

Quero só altera o campo (a;) p/ (b;) do usuário Bruno, e assim por 
diante!!!, Sempre utilizando os campos. Vc poderia me mostra um 
exemplo do que estou comentando?


Grato,



--- Em address@hidden, "Tiago Barcellos Peczenyj" 
<tiago.peczenyj@g...> escreveu
>
> existem muitas formas, por exemplo
> 
> sed '/expressão regular/ s/o que vc quer alterar/alteração que vc
> quer/g' arquivo > arquivo_novo
> 
> Se vc tem uma linha assim:
> a;00:00:00:00:00:00;10.1.1.2;Bruno
> 
> e gostaria de alterar para
> a;00:00:00:00:00:00;10.1.1.2;Alfredo
> 
> Podes fazer assim
> sed '/10.1.1.2/ s/Bruno/Alfredo/g' arquivo
> 
> Só precisas colocar uma expressão regular para pegar qualquer IP.
> 
> Entretanto não sei como vc quer alterar as linhas que contenham tal
> IP. Uma forma é assim, se vc quer alterações mais profundas deve
> estudar que ferramenta vc quer usar. Pode ser SED, AWK, ou alguma
> combinação de cut, grep, echo, paste,...
> 
> Veja um exemplo com AWK
> awk -F';' '/10.1.1.2/{$4="Alfredo" ; print $0}' arquivo
> a 00:00:00:00:00:00 10.1.1.2 Alfredo
> 
> $ awk -F';' '/10.1.1.2/{$4="Alfredo" ; print $0}' arquivo | 
tr ' ' ';'
> a;00:00:00:00:00:00;10.1.1.2;Alfredo
> 
> On 4/20/06, Good_speed - Erik P. ghijs <erik@m...> wrote:
> > Oi Pessoal,
> > Estou com uma duvida cruel, com respeito a fazer uma alteração 
em um
> > campo especifico no Shell script, vou mostra o exemplo:
> > /etc/maclist
> > a;00:00:00:00:00:00;10.1.1.2;Bruno
> > Quero que o script altere so a linha onde esta o ip, alguém 
poderia
> > me mostra a luz?
> 
> --
> 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: 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




      Yahoo! Grupos, um serviço oferecido por: 
            PUBLICIDADE
              
     


--------------------------------------------------------------------------------
Links do Yahoo! Grupos

  a.. Para visitar o site do seu grupo na web, acesse:
  http://br.groups.yahoo.com/group/shell-script/
    
  b.. Para sair deste grupo, envie um e-mail para:
  address@hidden
    
  c.. O uso que você faz do Yahoo! Grupos está sujeito aos Termos do Serviço do 
Yahoo!. 




--------------------------------------------------------------------------------


No virus found in this incoming message.
Checked by AVG Free Edition.
Version: 7.1.385 / Virus Database: 268.4.5/321 - Release Date: 21/4/2006


[As partes desta mensagem que não continham texto foram removidas]



reply via email to

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