segunda-feira, 15 de janeiro de 2001

Comandos do editor VI do Linux / Unix

Listagem e descrição dos comandos de edição do VI:

Comandos de movimentação do cursor

h / SetaEsquerda / BackSpace / Ctrl+h

Move o cursor um caracter a esquerda

(nh move o cursor n caracteres a esquerda)

j / SetaBaixo / Enter / Ctrl+j / Ctrl+n

Move o cursor para a próxima linha

(nj move o cursor n linhas à frente)

k / SetaCima / Ctrl+p

Move o cursor para linha anterior

(nk move o cursor n linhas para trás)

l / SetaDireita / Espaço

Move o cursor um caracter a direita

(nl move o cursor n caracteres a direita)

Ctrl+f / PgDn

Move o cursor para a próxima página

(nCtrl+f move o cursor n páginas para baixo)

Ctrl+b / PgUp

Move o cursor para a página anterior

(nCtrl+b move o cursor n páginas para cima)

0 / Home

Move o cursor para o início da linha atual

 

^

Move o cursor para o primeiro caracter diferente de branco da linha atual

 

$ / End

Move o cursor para o final da linha atual

(n$ move o cursor para o final da linha n posições abaixo)

w

Move o cursor para o início da próxima palavra (considerando a pontuação)

(nw move o cursor n palavras à frente)

W

Move o cursor para o início da próxima palavra (não considerando a pontuação)

(nW move o cursor n palavras à frente)

e

Move o cursor para o fim da próxima palavra (considerando a pontuação)

(ne move o cursor para o fim de n palavras à frente)

E

Move o cursor para o fim da próxima palavra (não considerando a pontuação)

(nE move o cursor para o fim de n palavras à frente)

b

Move o cursor para o início da palavra anterior (considerando a pontuação)

(nb move o cursor n palavras para trás)

B

Move o cursor para o início da palavra anterior (não considerando a pontuação)

(nB move o cursor n palavras para trás)

ge

Move o cursor para o fim da palavra anterior (considerando a pontuação)

(nge move o cursor para o fim de n palavras para trás)

gE

Move o cursor para o fim da palavra anterior (não considerando a pontuação)

(ngE move o cursor para o fim de n palavras para trás)

H

Move o cursor para o primeiro caracter diferente de branco da primeira linha da tela

(nH move o cursor para o primeiro caracter diferente de branco da linha n da tela)

M

Move o cursor para o primeiro caracter diferente de branco da linha do meio da tela

 

L

Move o cursor para o primeiro caracter diferente de branco da última linha da tela

(nL move o cursor para o primeiro caracter diferente de branco, n linhas antes da última da tela)

G

Move o cursor para o primeiro caracter diferente de branco da última linha do arquivo

(nG move o cursor para o primeiro caracter diferente de branco da linha n do arquivo)

Comandos de edição de texto

i

Abre inserção de texto antes do cursor

(ni repete n vezes o texto inserido antes do cursor)

a

Abre inserção de texto depois do cursor

(na repete n vezes o texto inserido depois do cursor)

I

Abre inserção de texto no início da linha onde se encontra o cursor

(nI repete n vezes o texto inserido no início da linha)

A

Abre inserção de texto no final da linha onde se encontra o cursor

(nA repete n vezes o texto inserido no final da linha)

s

Apaga o caracter sob o cursor e abre a inserção de texto

(ns apaga n caracteres sob o cursor e abre a inserção de texto)

R

Abre a edição de texto sob o cursor em modo de "sobrescrever"

(nR repete n vezes o texto digitado, sobrescrevendo os caracteres à frente)

o

Insere uma linha e abre inserção de texto abaixo da linha atual

(no repete n vezes a linha inserida abaixo da linha atual)

O

Insere uma linha e abre inserção de texto acima da linha atual

(nO repete n vezes a linha inserida acima da linha atual)

Ctrl+h

Apaga o último caracter digitado

 

Esc

Sai do modo de inserção e volta para o modo de comando

 

Comandos para alteração de texto

x

Apaga o caracter que esta sob o cursor

(nx apaga n caracteres a partir do cursor)

dw

Apaga a palavra, da posição atual do cursor até o final

(ndw apaga n palavras a partir da posição do cursor)

dd

Apaga a linha atual

(ndd apaga n linhas a partir da atual)

D

Apaga a linha a partir da posição atual do cursor até o final

(nD apaga a linha a partir da posição atual do cursor e mais n linhas abaixo)

rx

Substitui o caracter sob o cursor pelo especificado em x

(nrx substitui n caracteres depois do cursor pelo especificado em x)

u

Desfaz a última modificação

(nu desfaz as n últimas modificações)

U

Desfaz todas as modificações feitas na última linha a ser alterada

 

J

Une a linha corrente a próxima

(nJ une a linha corrente a n linhas abaixo)

Comandos para busca e substituição de texto

/texto

Busca a primeira ocorrência de texto depois do cursor

 

?texto

Busca a ocorrência de texto imediatamente anterior ao cursor

 

n

Repete o último comando / ou ?

(nn repete o último comando / ou ?, saltando n ocorrências do texto)

N

Repete o último comando / ou ?, na direção reversa

(nN repete o último comando / ou ?, na direção reversa, saltando n ocorrências do texto)

Ctrl+g

Mostra o nome do arquivo, o número da linha corrente e o total de linhas

 

:s/texto1/texto2

Substitui a primeira ocorrência de texto1 por texto2 na linha corrente

(:s/texto1/texto2/g Substitui todas as ocorrências na linha corrente)

:l1,l2s/texto1/texto2

Substitui a primeira ocorrência em cada linha de texto1 por texto2 entre as linhas l1 e l2

(:%s/texto1/texto2/g Substitui todas as ocorrências em todo o arquivo)

Comandos de gerenciamento de arquivos

:r nome-arquivo

Lê o arquivo especificado

 

:wq

Salva o arquivo e sai do editor

 

:w

Salva o arquivo

(:w nome-arquivo salva o arquivo com outro nome, não sobrescreve se o nome já existir)

:w!

Salva o arquivo

(:w! nome-arquivo salva o arquivo com outro nome, sobrescrevendo se o nome já existir)

:q

Sai do editor, exceto se houverem alterações que não foram gravadas

 

:q!

Sai do editor sem salvar as alterações realizadas