8 Dicas e truques interessantes do editor 'vi/vim' para todos os administradores do Linux - Parte 2

8 Dicas e truques interessantes do editor 'vi/vim' para todos os administradores do Linux - Parte 2

No artigo anterior desta série, revisamos 7 dicas e truques para adicionar ao seu conjunto de habilidades VI/M. Além dos motivos apresentados anteriormente, aprender a usar efetivamente um editor de texto no Linux em uma capacidade essencial para um administrador ou engenheiro de sistema e é uma competência necessária para aprovar qualquer programa de certificação Linux principal (como LFCS, LFCE, RHCSA e RHCE).

8 Dicas e truques interessantes do editor 'VI/Vim' - Parte 2

Dito isto, vamos começar.

Dica #8: Crie janelas horizontais ou verticais

Esta dica foi compartilhada por Yoander, Um de nossos leitores, na Parte 1. Você pode iniciar VI/M com várias divisões horizontais ou verticais para editar arquivos separados dentro da mesma janela principal:

Inicie VI/M com duas janelas horizontais, com Test1 no topo e Test2 no fundo

# vim -o test1 test2 
Inicie o editor Vim em janelas horizontais

Inicie VI/M com duas janelas verticais, com Test3 à esquerda e Test4 à direita:

# vim -o test3 test4 
Inicie o editor Vim em janelas verticais

Você pode mudar o cursor de uma janela para outra com a rotina usual de movimento VI/M (H: certo, eu: esquerda, J: fundo, k: principal):

  1. Ctrl+W K - principal
  2. Ctrl+w j - fundo
  3. Ctrl+w l - esquerda
  4. Ctrl+w h - certo

Dica #9: Altere letras, palavras ou linhas inteiras para maiúsculas ou minúsculas

Observe que esta dica só funciona em vim. Nos próximos exemplos, X é um número inteiro.

  1. Para alterar uma série de letras para maiúsculas, posicione o cursor na primeira letra e digite GUX em ex modo e finalmente pressione a seta direita no teclado.
  2. Para alterar x número de palavras, coloque o cursor no início da palavra e digite Guxw em ex modo.
  3. Para alterar uma linha inteira para maiúsculas, coloque o cursor em qualquer lugar da linha e digite Guu em ex modo.

Por exemplo, para converter um inteiro minúsculo linha para maiúsculas, Você deve colocar o cursor em qualquer lugar na linha e digitar Guu:

Altere a string para manchas no editor Vim

Por exemplo, para converter 2 maiúsculas palavras para minúsculo, Você deve colocar o cursor no início da primeira palavra e digitar GU2W:

Converter string em minúsculas no editor Vim

Dica #10: Exclua caracteres, palavras ou para o início de uma linha no modo de inserção

Enquanto você pode excluir personagens ou várias palavras de uma só vez em ex modo (i.e. dw Para excluir uma palavra), você também pode fazê -lo no modo de inserção da seguinte maneira:

  1. Ctrl + h: Exclua o personagem anterior ao local onde o cursor está localizado atualmente.
  2. Ctrl + W: Exclua a palavra anterior ao local onde o cursor está localizado atualmente. Para que isso funcione corretamente, o cursor deve ser colocado em um espaço vazio após a palavra que você precisa excluir.
  3. Ctrl + u: Exclua a linha atual que começa no personagem imediatamente à esquerda do local onde o cursor está.

Dica #11: Mova ou copie as linhas existentes para outra linha do documento

Embora seja verdade que você pode usar os comandos conhecidos DD, YY e P no modo ex para excluir, Yank (copiar) e colar linhas, respectivamente, que só funcionam quando o cursor é colocado onde você deseja executar essas operações. A boa notícia é que com o cópia de e mover Comandos você pode fazer o mesmo, independentemente de onde o cursor está atualmente colocado.

Para o próximo exemplo, usaremos um poema curto intitulado “Para sempre" por Terri Nicole Tharrington. Para começar, teremos vim exibir os números de linha (: Defina Nu no modo de comando - considere isso uma dica extra). Nós vamos usar : 3copy5 (também no modo de comando) para copiar a linha 3 abaixo da linha 5:

Mover copiar linhas existentes em vim

Agora, desfazer a última mudança (Esc + u - Outra dica de bônus!) e tipo : 1Move7 Para substituir a linha 7 pela linha 1. Observe como as linhas 2 a 7 são deslocadas e o antigo Linha 1 agora ocupa a linha 7:

Mover linhas no editor Vim

Dica #12: contagem de correspondências resultantes de uma pesquisa por padrão e mova -se de uma ocorrência para outra

Esta dica é baseada no comando substituto (dica #7 em Parte 1 desta série), com a exceção de que não removerá nada, pois o comportamento substituto é substituído pelo n opção, resultando na contagem de ocorrências do padrão especificado:

Certifique -se de não omitir nenhuma das barras para a frente!

:%s/padrão // GN 

Por exemplo,

:%s/libero // gn 
Contam correspondências por padrão de pesquisa em vim

Passar de uma ocorrência do padrão para o próximo em ex modo, pressione n (minúscula n). Para se mudar para a instância anterior, pressione N.

Dica #13: Abra diretamente VI/M em uma linha especificada

Por padrão, quando você inicia VI/M, o cursor é inicialmente colocado na última linha que foi editada. Se você deseja abrir o programa e fazer com que o cursor seja colocado diretamente em uma linha especificada, você pode usar o seguinte truque:

# vim filename +line_number 

Por exemplo, aberto para sempre.TXT e coloque o cursor na fila 6:

# vim para sempre.txt +6 

Vamos ajustar um pouco este exemplo. Suponha que queremos abrir o arquivo na linha em que a terceira ocorrência do padrão aparece:

# Vim FileName +$ (Grep -in Pattern FileName | sed -n 3p | Cut -d: -f1) 

Vamos dar uma olhada no que o comando acima faz:

  1. Grep -in Pattern FileName - Exibe todas as linhas do nome do arquivo onde o padrão ocorre, com o número da linha no início de cada linha de saída.
  2. sed -n 3p - Exibe a 3ª linha da saída do pipeline anterior.

Finalmente,

  1. corte -d: -f1 Retorna o primeiro campo do pipeline anterior com o cólon (:) é o separador de campo.
# grep -in para sempre para sempre.txt # grep -in para sempre para sempre.txt | sed -n 3p # grep -in para sempre.txt | sed -n 3p | corte -d: -f1 
Open VIM Editor na linha especificada

O resultado do comando anterior é então passado para VI/M para abrir o programa na linha especificada.

Dica #14: Personalizando seu ambiente VI/M

Se você usar o VI/M para editar arquivos de configuração ou para gravar código, convém exibir os números de linha quando abrir o programa e definir o recuo automático, para que quando você pressione o Digitar Chave, o cursor será automaticamente colocado na posição correta. Além disso, você pode querer personalizar o número de espaços brancos que uma guia ocupa.

Enquanto você pode fazer isso cada vez que você inicia VI/M, é mais fácil definir essas opções em ~/.Vimrc para que eles sejam aplicados automaticamente:

Definir número definido autoindent Set ShiftWidth = 4 Definir softtabstop = 4 set expandttab 

Para obter mais opções para personalizar seu ambiente VI/M, você pode consultar a documentação online do VIM.

Dica #15: Obtenha ajuda/opções gerais com vimtutor

Se a qualquer momento você precisar aprimorar suas habilidades gerais VI/M, você pode iniciar Vimtutor Na linha de comando que exibirá uma ajuda completa VI/M a que você pode se referir sempre que desejar, sem a necessidade de iniciar um navegador da web para pesquisar como realizar uma determinada tarefa em VI/M.

# Vimtutor 
Ajuda e opções do editor do vim

Observe que você pode navegar ou pesquisar o conteúdo do Vimtutor como se estivesse navegando um arquivo regular em VI/M.

Resumo

Nesta série de 2 articles, compartilhei várias dicas e truques VI/M que devem ajudá-lo a ser mais eficaz quando se trata de editar texto usando ferramentas de linha de comando. Tenho certeza que você deve ter outros - então fique à vontade para compartilhá -los com o resto da comunidade usando o formulário abaixo. Como sempre, perguntas e comentários também são bem -vindos.

Envie sua dica ou truque VI/Vim