Acesso direto ao conteúdo
Logotipo Dicas-L, por Ricardo Burile
Visite também: Ipok ·  Segurança Linux ·  UnderLinux ·  VivaOLinux ·  LinuxSecurity ·  NoticiasLinux ·  BR-Linux ·  SoftwareLivre.org ·  [mais]   
 

Você está aqui: Home  → Arquivo Dicas-L

 

Lan University - Certificações e Qualificações em TI

Assine a Lista Dicas-L

Receba diariamente por email as dicas
de informática publicadas neste site
Para se descadastrar, clique aqui.

Mais dicas de vi

Colaboração: Fernando M. Roxo da Motta

Data de Publicação: 24 de Outubro de 2003

Quando se usar :

  :s/.../.../[g][c]

Estas "/" são delimitadoras de campo. Os campos são os alvos (a primeira parte) e o destino (a segunda parte, como fica fácil depreender;)). Se por um acaso o delimitador aparece em qualquer das partes ele terá que ser marcado ("escapado", filtrado) como um não delimitador. Por isto no exemplo acima apareceu o tal "GNU\/Linux". Só que esta história pode tornar muito complicada a leitura dos padrões, aumentando a probabilidade de erro. Por exemplo :

  :s/\/usr\/tmp/\/var\/lib\/lixo/g

E aí, o que está sendo trocado por o quê ? Complicado, né ?

Bem, a melhor maneira de resolver este embróglio é lembrar que embora normalmente se use a "/" como delimitador, vários outros caracteres podem ter esta função. Por exemplo, se usarmos o "#" como delimitador acima teremos :

  :s#/usr/tmp#/var/lib/lixo#g

Que torna muito mais fácil a leitura do comando, certo ? Logo o exemplo lá de cima poderia ficar :

  :s#Linux#GNU/Linux#g

Que torna claro o comando a ser executado.

E se usando o "#" como delimitador aparecer um "#" no padrão :

  :s#/usr/tmp#/var/tmp/usr##

Oops !! Não, para funcionar a lógica é a mesma anterior :

  :s#/usr/tmp#/var/tmp/usr\##

Ainda fica mais legível um único "escape" (a "\" ) aplicado a um "#" que aplicar naquele monte de "/", certo ? Mas ainda pode ficar muito melhor :

  :s@/usr/tmp@/var/tmp/usr#@

ou

  :s+/usr/tmp+/var/tmp/usr#+

Resumindo, existem vários delimitadores possíveis, use aquele que melhor se acerte com os padrões necessários para pesquisa e substituição.


Wget: Baixando Sites e Arquivos com Wget

http://www.linuxbsd.com.br/phpLinuxBSD/modules/artigos_tecnicos/wget.htm

 

 

Veja a relação completa dos artigos de Fernando M. Roxo da Motta

Formato PDF
Newsfeed RSS
Formato para impressão
PDF RSS Imprimir

Referências Adicionais

Referências adicionais sobre os assuntos abordados neste site podem ser encontradas em nossa Bibliografia.

Avalie esta dica

  • Currently 2.98/5
  • 1
  • 2
  • 3
  • 4
  • 5

Avaliação: 3.0 /5 (1833 votos)

Opinião dos Leitores

Seja o primeiro a comentar este artigo
*Nome:
Email:
Me notifique sobre novos comentários nessa página
Oculte meu email
*Texto:
 
  Para publicar seu comentário, digite o código contido na imagem acima
 


Powered by Scriptsmill Comments Script


 

Read in English - Uma Maneira Divertida de Aprender Inglês