Editar Arquivos de Texto no Linux com Vim e Nano

CompTIABeginner
Pratique Agora

Introdução

Neste laboratório, você aprenderá as habilidades fundamentais necessárias para utilizar dois editores de texto essenciais no Linux: vi/vim e nano. Estes são os editores de texto mais comuns em ambientes Linux, cada um com suas próprias vantagens e casos de uso.

Você começará com o editor de texto vi, uma ferramenta poderosa e onipresente em sistemas do tipo Unix. Você aprenderá a criar arquivos, inserir texto usando o Modo de Inserção (Insert Mode), salvar seu trabalho com comandos como :w e :wq, navegar usando teclas de movimento, pesquisar por texto e realizar operações básicas de edição, como excluir palavras.

Na segunda parte do laboratório, você explorará o nano, um editor mais amigável e perfeito para iniciantes. Você descobrirá sua interface intuitiva, aprenderá operações básicas de edição e entenderá quando escolher o nano em vez do vim para diferentes tarefas.

Ao final deste laboratório, você estará confortável usando ambos os editores e entenderá qual ferramenta é a mais adequada para diferentes cenários em seu fluxo de trabalho no Linux.

Este é um Laboratório Guiado, que fornece instruções passo a passo para ajudá-lo a aprender e praticar. Siga as instruções cuidadosamente para concluir cada etapa e ganhar experiência prática. Dados históricos mostram que este é um laboratório de nível avançado com uma taxa de conclusão de 49%. Ele recebeu uma taxa de avaliação positiva de 98% dos alunos.

Criar um Arquivo e Inserir Texto no Modo de Inserção

Nesta etapa, você aprenderá como usar o editor vi para criar um novo arquivo de texto e inserir conteúdo. O vi (e sua versão moderna, vim) é um editor de texto poderoso e onipresente em sistemas operacionais do tipo Unix. Ele opera em diferentes modos, sendo os dois mais básicos o Modo Normal (para comandos) e o Modo de Inserção (para digitar texto).

Primeiro, vamos garantir que você esteja no diretório de trabalho correto. Todo o trabalho deste laboratório será feito no diretório ~/project.

  1. Abra um terminal. O prompt deve mostrar que você está no diretório project. Você pode verificar o caminho completo com o comando pwd (print working directory).

    pwd

    Você deve ver a seguinte saída, confirmando sua localização:

    /home/labex/project
    Terminal mostrando o diretório atual
  2. Agora, inicie o editor vi e crie um novo arquivo chamado test.txt. Quando você executar este comando, o vi será iniciado e assumirá o controle da janela do seu terminal.

    vi test.txt

    Seu terminal será limpo e você verá uma tela com tils (~) na lateral esquerda. Eles indicam linhas vazias. Na parte inferior da tela, você verá o nome do arquivo "test.txt" [New File]. Você está atualmente no Modo Normal.

  3. Para começar a digitar o texto, você precisa mudar para o Modo de Inserção. Pressione a tecla i no seu teclado.

    i

    Observe que na parte inferior da tela aparece -- INSERT --. Isso confirma que você está no Modo de Inserção e agora pode digitar texto diretamente no arquivo.

  4. Digite a seguinte frase:

    Now is the time for all good men to come to the aid of their country.

    Editor vi mostrando texto inserido no modo de inserção

    Neste ponto, o texto que você digitou existe no buffer de memória do editor, mas ainda não foi salvo no disco. Na próxima etapa, você aprenderá como salvar seu trabalho e sair do editor.

Salvar e Sair do Arquivo usando :w e :wq

Nesta etapa, você aprenderá como salvar suas alterações e sair do editor vi. Essas ações são realizadas usando comandos no Modo Normal. Como você está atualmente no Modo de Inserção da etapa anterior, primeiro precisa retornar ao Modo Normal.

  1. Para alternar do Modo de Inserção de volta para o Modo Normal, pressione a tecla Esc.

    Esc

    Você notará que o indicador -- INSERT -- na parte inferior da tela desaparece. Isso significa que você agora está no Modo Normal, onde as teclas pressionadas são interpretadas como comandos em vez de entrada de texto.

  2. Agora, vamos salvar o arquivo. No Modo Normal, os comandos que são precedidos por dois pontos (:) são exibidos em uma linha de comando na parte inferior da tela. Para gravar (salvar) o arquivo, você usa o comando :w.

    Digite a seguinte sequência e pressione Enter:

    :w

    Depois de pressionar Enter, o vi gravará o conteúdo do buffer no arquivo test.txt. Você verá uma mensagem de confirmação na parte inferior, semelhante a esta:

    "test.txt" [New] 1L, 79C written

    Esta mensagem confirma que o arquivo test.txt foi salvo, contendo 1 linha e 79 caracteres.

  3. Finalmente, para sair do vi, você pode usar o comando :q para "quit" (sair). Um comando mais comum é :wq, que combina a gravação do arquivo e a saída em uma única ação. Como você já está no Modo Normal, digite o seguinte e pressione Enter:

    :wq

    Este comando salva quaisquer alterações finais e fecha o editor vi, retornando você ao prompt do shell no seu terminal. Seu terminal deve agora exibir o prompt de comando familiar, e o arquivo test.txt está salvo em seu diretório ~/project.

Nesta etapa, você praticará alguns dos poderosos comandos de navegação e pesquisa do vi. Esses comandos permitem mover o cursor e encontrar texto de forma eficiente sem usar o mouse. Todas essas operações são realizadas no Modo Normal.

  1. Primeiro, você precisa abrir o arquivo test.txt novamente. No prompt do shell no diretório ~/project, digite o seguinte comando:

    vi test.txt

    O editor abrirá com o conteúdo do arquivo exibido. O cursor provavelmente estará no início da primeira linha.

  2. Para garantir que o cursor esteja no início do arquivo, você pode usar o comando gg. Enquanto estiver no Modo Normal (pressione Esc se não tiver certeza), digite gg.

    gg

    O cursor saltará imediatamente para o primeiro caractere da primeira linha, que é o 'N' em nosso arquivo.

  3. A principal maneira de mover o cursor no vi é com as teclas h, j, k e l. Esta é uma habilidade fundamental para qualquer usuário de vi.

    • h move o cursor um caractere para a esquerda.
    • l move o cursor um caractere para a direita.
    • j move o cursor uma linha para baixo.
    • k move o cursor uma linha para cima.

    Tente pressionar essas teclas para mover o cursor pela frase. Este método de navegação funciona em qualquer ambiente de terminal.

  4. Agora, vamos pesquisar por texto. O comando / é usado para pesquisar para frente no arquivo. Para pesquisar todas as ocorrências da letra 'a', siga estas etapas:
    a. Certifique-se de estar no Modo Normal (pressione Esc).
    b. Digite / seguido pelo caractere que deseja pesquisar, neste caso, a. Em seguida, pressione Enter.

    /a

    O cursor saltará para o primeiro 'a' que encontrar após a posição atual do cursor.

    c. Para encontrar a próxima instância do mesmo termo de pesquisa, basta pressionar a tecla n (de "next").

    n

    Pressione n várias vezes para percorrer todos os 'a's no arquivo.

Você agora praticou a navegação básica e a pesquisa. Na próxima etapa, você aprenderá como excluir texto.

Excluir uma Palavra com dw e Sair sem Salvar com :q

Nesta etapa, você aprenderá como excluir texto e como sair do vi sem salvar suas alterações. Esta é uma habilidade crucial para quando você comete um erro e deseja reverter para a última versão salva do arquivo. Você ainda deve estar com o vi aberto no arquivo test.txt da etapa anterior.

  1. Primeiro, vamos mover o cursor para a palavra que queremos excluir. Certifique-se de estar no Modo Normal (pressione Esc se não tiver certeza). Use as teclas h e l para mover o cursor até que ele esteja posicionado na primeira letra da palavra time.

  2. Com o cursor no t de time, digite o comando dw. Este comando significa "delete word" (excluir palavra).

    dw

    Você verá a palavra time e o espaço que a segue desaparecerem da tela. A frase agora parece incorreta, o que é perfeito para nossa próxima ação.

  3. Você agora modificou o arquivo no buffer do editor. Vamos fingir que essa exclusão foi um erro. Em vez de salvar esta versão incorreta, você sairá e descartará a alteração. O comando para fazer isso é :q!. O q é para "quit" (sair) e o ! força a ação, ignorando quaisquer alterações não salvas.

    a. Certifique-se de estar no Modo Normal (pressione Esc).
    b. Digite o seguinte comando e pressione Enter:

    :q!

    Este comando sairá imediatamente do editor vi e retornará você ao prompt do shell. Como você usou :q!, a exclusão da palavra time não foi salva no arquivo test.txt. Se você abrisse o arquivo novamente, a palavra time ainda estaria lá.

Iniciar o vimtutor Interativo para Prática Adicional

Nesta etapa, você descobrirá o vimtutor, um tutorial interativo projetado para ensinar habilidades de vi/vim de forma prática. Este laboratório cobriu o básico absoluto, mas o vimtutor oferece um curso abrangente e no seu próprio ritmo, altamente recomendado para todos os novos usuários.

  1. Você deve estar no prompt do shell no diretório ~/project. Para iniciar o tutorial, basta digitar o comando vimtutor e pressionar Enter.

    vimtutor
  2. Este comando abre o vi com um arquivo de tutorial especial. O próprio arquivo contém todas as instruções. Você lerá o texto e praticará os comandos descritos diretamente no arquivo do tutorial. É uma maneira segura e eficaz de aprender, pois você está praticando em uma cópia temporária do arquivo.

    O tutorial é dividido em lições e estima-se que leve cerca de 25 a 30 minutos para ser concluído. Você pode percorrê-lo no seu próprio ritmo.

  3. Quando terminar o tutorial (ou quiser sair a qualquer momento), você pode sair exatamente como faria em qualquer sessão do vi. Como você não precisa salvar nenhuma alteração no arquivo do tutorial, a melhor maneira de sair é usando o comando :q!.

    a. Pressione Esc para garantir que está no Modo Normal.
    b. Digite :q! e pressione Enter.

    :q!

Isso encerra a parte prática deste laboratório. Ao concluir essas etapas, você aprendeu as habilidades fundamentais para criar, editar, salvar e navegar em arquivos com o editor vi.

Introdução ao Editor nano

Nesta etapa, você aprenderá a usar o nano, um editor de texto amigável, perfeito para iniciantes e edições rápidas. Ao contrário do vi, o nano exibe atalhos úteis na parte inferior da tela e não possui modos diferentes, tornando-o mais intuitivo para novos usuários.

  1. Primeiro, vamos criar um novo arquivo usando o nano. No prompt do shell no diretório ~/project, digite o seguinte comando:

    nano welcome.txt

    O editor nano abrirá com um arquivo em branco. Observe o menu útil na parte inferior mostrando as funções disponíveis.

  2. Diferente do vi, você pode começar a digitar imediatamente no nano sem alternar modos. Copie e cole o seguinte texto:

    Interface do editor nano mostrando atalhos na parte inferior
    Welcome to Linux Text Editing!
    
    This file was created using the nano editor.
    Nano is beginner-friendly and intuitive.
    
    Key advantages of nano:
    - No modes to switch between
    - Shortcuts displayed at bottom
    - Easy to learn and use
    - Perfect for quick edits
  3. Agora vamos salvar o arquivo. Use a função de salvar no nano. Você verá um prompt solicitando o nome do arquivo. O nome atual welcome.txt já é exibido. Pressione Enter para confirmar e salvar o arquivo.

    Você verá uma mensagem na parte inferior indicando que o arquivo foi gravado com sucesso, mostrando o número de linhas gravadas.

  4. Para sair do nano, use a função de saída. Como você já salvou o arquivo, o nano sairá imediatamente e retornará você ao prompt do shell.

Comparando nano e vi/vim: Quando Usar Cada Editor

Nesta etapa final, você aprenderá sobre as principais diferenças entre o nano e o vi/vim, e entenderá quando usar cada editor. Vamos criar um arquivo de comparação usando ambos os editores para demonstrar suas diferenças.

  1. Primeiro, vamos usar o nano para criar um arquivo de comparação:

    nano editor_comparison.txt
  2. Insira o seguinte conteúdo no nano:

    TEXT EDITOR COMPARISON: nano vs vi/vim
    
    NANO EDITOR:
    Pros:
    - Beginner-friendly interface
    - No modes to learn
    - Shortcuts displayed on screen
    - Immediate text input
    - Good for quick edits and simple tasks
    
    Cons:
    - Limited advanced features
    - Less efficient for complex editing
    - Not available on all systems
  3. Salve o arquivo e saia do nano.

  4. Agora, vamos abrir o mesmo arquivo com o vi para adicionar mais conteúdo:

    vi editor_comparison.txt
  5. Navegue até o final do arquivo usando G (G maiúsculo), então pressione o para abrir uma nova linha e entrar no Modo de Inserção. Adicione o seguinte conteúdo:

    VI/VIM EDITOR:
    Pros:
    - Extremely powerful and feature-rich
    - Available on virtually all Unix/Linux systems
    - Highly efficient once mastered
    - Excellent for programming and complex editing
    - Extensive customization options
    
    Cons:
    - Steep learning curve
    - Modal interface can be confusing for beginners
    - Requires memorizing many commands
  6. Pressione Esc para retornar ao Modo Normal, então salve e saia com :wq.

  7. Vamos visualizar o arquivo de comparação completo:

    cat editor_comparison.txt

    Isso exibirá a comparação completa mostrando o conteúdo adicionado por ambos os editores.

Quando usar cada editor:

  • Use o nano quando:

    • Você for novo na edição de texto no Linux
    • Estiver fazendo edições rápidas e simples
    • Estiver trabalhando em arquivos de configuração ocasionalmente
    • Preferir uma interface direta e intuitiva
  • Use o vi/vim quando:

    • Estiver fazendo programação extensiva ou manipulação de texto
    • Estiver trabalhando em servidores remotos (o vi está sempre disponível)
    • Precisar de recursos avançados como macros, plugins ou busca/substituição complexa
    • Eficiência e velocidade forem importantes após você ter aprendido os comandos

Ambos os editores são ferramentas valiosas no kit de ferramentas de um usuário Linux, e conhecer ambos oferece flexibilidade em diferentes situações.

Resumo

Neste laboratório, você aprendeu a usar dois editores de texto essenciais no Linux: vi/vim e nano.

Com o vi/vim, você dominou os conceitos fundamentais da edição modal, aprendendo a alternar entre o Modo Normal e o Modo de Inserção. Você praticou a criação de arquivos, inserção de texto, salvamento com :w e :wq, navegação com teclas de movimento (h, j, k, l), pesquisa com /, edição com comandos como dw e saída sem salvar usando :q!. Você também descobriu o vimtutor interativo para aprendizado contínuo.

Com o nano, você experimentou uma abordagem mais amigável para iniciantes na edição de texto. Você aprendeu a criar e editar arquivos sem se preocupar com modos, usou a interface intuitiva com atalhos exibidos na parte inferior da tela e praticou operações básicas como salvar e sair de arquivos.

Principais conclusões:

  • O nano é perfeito para iniciantes e edições rápidas devido à sua interface intuitiva e atalhos visíveis.
  • O vi/vim é mais poderoso e eficiente para tarefas de edição complexas, mas exige um maior investimento de aprendizado.
  • Ambos os editores são ferramentas valiosas — nano pela simplicidade e vim pelo poder e disponibilidade.
  • Entender quando usar cada editor tornará você mais eficaz em diferentes cenários do Linux.

Agora você tem a base para escolher o editor de texto certo para suas necessidades específicas e pode continuar desenvolvendo suas habilidades com ambas as ferramentas.