Editor de Textos VI

_______________________________________________________________________________

O VI é o editor de texto padrão no GNU/Linux porem ele possui uma versão mais completa nomeada como VIM ( VI iMproved ) ou seja uma versão melhorada repleta de recursos:


Estrutura do VI
_______________________________________________________________________________



Comandos de Edição
 
i
Inserir um texto antes do cursor
a
Inserir um texto depois do cursor
r
Inserir um texto no início da linha onde está o cursor
A
Inserir um texto no final da linha onde está o cursos
o
Inserir uma linha abaixo da linha atual
0
Inserir uma linha acima da linha atual
Ctrl + h
Remove o último caracter
 
Comandos de Movimentação
 
Ctrl + f
Move o cursor para a próxima tela
Ctrl + b
Move o cursor para a tela anterior
H
Move o cursor para a primeira linha da tela
M
Move o cursor para o meio da tela
L
Move o cursor para a última linha da tela
h
Move o cursor um caracter à esquerda
l
Move o cursor um caracter è direita
j
Move o cursor para a próxima linha
k
Move o cursor para a linha anterior
w
Move o cursor para o início da próxima palavra
W
Move o cursor para o início da próxima palavra
b
Move o cursor para o início da palavra anterior
B
Move o cursor para o início da palavra anterior
0
Move o cursor para o início da linha atual
^
Move o cursor para o primeiro caracter não branco da linha atual
$
Move o cursor para o final da linha atual
nG
Move o cursor para a linha n
G
Move o cursor para a última linha do arquivo
   
Comandos de Localização
 
/palavra
Busca pela palavra ou caracter em todo texto
?palavra
Move o cursor para a ocorrência anterior da palavra
n
Repete o último comando / ou ?
N
Repete o último comando / ou ?, de forma reversa
Ctrl + g
Mostra o nome do arquivo, o número de linha atual e o total de linhas
   
Comandos de Alteração
 
x
Remove o caracter que está sob o cursor
dw
Remove a palavra, da posição atual do cursor até o final
dd
Remove a linha atual
D
Remove a linha a partir da posição atual do cursor até o final
rx
Substitui o caracter sob o cursor pelo especifcado em x
Rx
Substitui a palavra sob o cursor pela palavra especificada em x
u
Desfaz a última modificação
U
Desfaz todas as modificações feitas na linha atual
J
Une a linha corrente a próxima
yy
Copia a linha atual
p
Cola a linha copiada
cc
Recorta a linha atual
:%s/123/abc/g
Substitui 123 por abc
   
Comandos de Execução
 
:wq
Salva o arquivo e sai do editor
:w nome_arquivo
Salva o arquivo corrente com o nome especificado
:w! nome_arquivo
Salva o arquivo corrente no arquivo especificado
:q
Sai do editor
:q!
Sai do editor sem salvar as alterações realizadas
:set number
Exibe a numeração de todas as linhas
:no set number
Desativa a visualização da numeração das linhas
   
Exemplos
 
01 -
Como removo as linhas 40 a 60 ?
Resposta
ESC :40 <enter> d + 20 + d
   
02 -
Como vou para o início do arquivo ?
Resposta
ESC :1 ou ESC GG
   
03 -
Como removo as 10 primeiras linhas ?
Resposta
ESC 1G + 10 + dd
   
04 -
Como vou para a linha 50 ?
Resposta
ESC :50 ou ESC 25 + G
   
05 -
Como fazer uma copia do arquivo para o /files ?
Resposta
ESC :w! /files/copia_arquivo
   
06 -
Como removo 3 linhas abaixo do cursor ?
Resposta
ESC j + 3 + dd
   
07 -
Em um arquivo de 1000 linhas como ir para o final do arquivo ?
Resposta
ESC G
   
08 -
Como localizar a palavra linux dentro do texto ?
Resposta
ESC /linux
   
09 -
Como substituir os /, por @ dentro de um arquivo ?
Resposta
ESC :%s/ \ //@/g
   
10 -
Como copiar 10 linhas de uma so vez ?
Resposta
ESC 10 + yy