Diferenças

Aqui você vê as diferenças entre duas revisões dessa página.

Link para esta página de comparações

procura_e_troca_usando_o_vi [2017/03/10 15:15] (atual)
andre criada
Linha 1: Linha 1:
 +====== Procura e Troca ======
 +
 +O vi tem uma capacidade imensa para fazer procuras e trocas dentro de um arquivo.
 +Para fazer uma procura de strings dentro de um arquivo aberto, tens que usar no modo comando (:), o comando "​s"​ seguido de uma barra (/) e a seqüência de caracteres que queiras procurar.
 +Depois que digitares tudo e a tecla ENTER, o sistema irá iluminar os lugares que a seqüência de caracteres for encontrada, se ela existir dentro do arquivo, é claro.
 +
 +Então a sintaxe formal seria esta abaixo:
 +
 +    :s/string
 +
 +Por exemplo: vamos dizer que estejas procurando a palavra fusca dentro do seu texto, então digite o que mostro abaixo e aperte ENTER:
 +
 +    :s/fusca
 +
 +A primeira ocorrência da palavra "​fusca"​ será iluminada dentro do seu texto. Se quiseres ver as demais ocorrências da mesma palavra, basta usar o comando "​n",​ assim o vi irá passar para a próxima ocorrência dentro do texto, se esta existir é claro.
 +
 +Agora vamos para os exemplos de busca e troca.
 +A sintaxe para fazer a troca de uma palavra por outra na linha atual dentro do seu arquivo é:
 +
 +    :​s/​pattern/​replace/​
 +
 +Aqui a palavra "​pattern"​ representa a palavra antiga e "​replace"​ representa a palavra nova. 
 +Vamos ao exemplo: para trocar cada ocorrência da palavra "​carro"​ por "​bicicleta"​ numa mesma linha, digite o seguinte:
 +
 +    :​s/​carro/​bicicleta/​
 +
 +Para fazer com que o vi  troque todas as ocorrências da palavra por todo o texto carregado dentro do editor, a sintaxe é muito parecida, somente é necessário adicionar ao comando o caracter "​%"​ a frente do comando "​s"​. Então a sintaxe formal para isso seria:
 +
 +    :​%s/​pattern/​replace/​
 +
 +Ou seja, usando o mesmo exemplo anterior, se fosse necessário realizar a troca em todo o arquivo usaríamos o seguinte comando abaixo:
 +
 +    :​%s/​carro/​bicicleta/​