VI (VIm): Alterando todas repetições de uma mesma palavra

Publicado por Fabio Maran em 25/08/2008

[ Hits: 33.794 ]

Blog: http://movimentolivre.zip.net

 


VI (VIm): Alterando todas repetições de uma mesma palavra



Fala galera, tranquilo?

Outro dia me deparei com o seguinte problema, tinha um arquivo texto que deveria conter centenas de milhares de palavras ;), e eu necessitava trocar todas as aparições de uma palavra ou número (IP sendo mais especifico) por uma outra palavra ou número.

Eu não olharia o arquivo inteiro em busca de palavra por palavra né? Então tive duas opções, criar um script ou utilizar um visualizador/editor de textos que me permitisse isso facilmente. Eis que o meu editor de sempre faz isso e eu ainda não tinha descoberto. oO"

Então vamos a dica em si:

Utilizando o VI ou VIm, você tem um arquivo que contem várias repetições da palavra Windows e quer substituir todas estas repetições por Linux.

Seguem o comandos (dentro do VI é claro, ou seja, primeiro dê um "vi arquivo"):

:%s/windows/linux/g

Todas as palavras windows são substituídas por linux. ;)

Bom, parece bobeira né, mas imagina você ter que trocar um número IP de um certo host e o mesmo aparece em muitas partes do arquivo?

Fica bem mais fácil né?

Abraços.

Outras dicas deste autor

Automatizando o Speedy no Slackware

Man pages em português

Resumo: Compilação do Kernel

10 conceitos básicos de segurança em um servidor

Utilizando o Alien

Leitura recomendada

Amule atualizado no Acer Aspire One (Linpus Linux Lite)

Instalando Linux em um Palmtop

GTA San Andras rodando via Wine

Cubo mágico do futuro no Linux

Rodando Linux no Nintendo DS com o port dslinux

  

Comentários
[1] Comentário enviado por fabio em 25/08/2008 - 17:07h

Se o cara tiver Windows ou wInDOws, esse comando não funcionará. Então você pode transformar a substituição em ignore case, ou seja, casar com maiúsculas e minúsculas também. Pra isso basta adicionar um "i" no final:

:%s/windows/linux/gi

E se quiser que o VI pergunte antes de efetuar a substituição, acrescente um "c":

:%s/windows/linux/gic

Um abraço.

[2] Comentário enviado por brenogalvao em 25/08/2008 - 18:15h

que isso cara, replace ou substituir é dos comandos mais básicos de qualquer editor...
desculpe a opnião, mas acho que esse texto enorme pra tão pouco nem chega a ser uma dica


[3] Comentário enviado por mathewsfoz em 12/07/2010 - 11:39h

Eaew branogalvao, blz, me da uma dica;
estou migrando o clipper para o clip do linux;
e preciso saber como alterar todos os caracteres "\" para "/" usando o vi.
?



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts