Infra - Linux
Substituição de Caracteres Não-Imprimíveis com Vim
Veja como efetuar a substituição de caracteres não-imprimíveis com Vim.
por Rubens Queiroz de AlmeidaPara criar os documentos da Dicas-L, às vezes eu tenho que copiar arquivos que são criados em editores de textos. Ao copiar e colar o texto no editor vim, caracteres como abre aspas e fecha aspas, são representados por algo como "~S" e "~T". Embora a representação destes caracteres seja feita com dois caracteres, na verdade trata-se de apenas um.
Para substituir estes caracteres pelo que desejamos, precisamos primeiramente identificar o código binário destes caracteres. Fazemos isto posicionando o cursor sobre o caracter desejado e em seguida digitamos ga.
Como exemplo, ao posicionarmos o cursor sobre o caractere "c", e digitarmos ga, temos, no rodapé do vim, a seguinte informação:
<c> 99, Hex 63, Octal 143
Primeiramente, temos o caractere, c, em seguida a representação decimal (99), a representação hexadecimal (63) e por fim a representação octal (143)
Podemos fazer isto com qualquer caractere do texto. Para substituir este caractere por outro, executamos o seguinte comando:
%s/\%x63/A/g
O comando acima irá substituir todos os caracteres "c" pelo caractere "A".
Isto pode ser feito para qualquer caractere, até os não imprimíveis. Note que no exemplo eu utilizei o formato hexadecimal, indicado pela letra "x" antes do código do caractere. Eu poderia ter usado o formato decimal:
%s/\%d99/A/g
ou octal:
%s/\%o143/A/g
Referência: Find & Replace non-printable characters in vim
- Login automático com SSH e Automatização da instalação (deploy) e atualização de sites com GitLinux
- O que é Ar.DroneLinux
- Criando aplicativos para o iPhone no Linux (sem Xcode e MacOS X)Linux
- Blu-ray: Reproduzindo, copiando, ripando e assistindo no GNU/LinuxLinux
- Utilize seu iPad/iPhone/IPod Touch na plataforma GNU/LinuxLinux