Como Editar Arquivos com um Editor de Texto Real do PowerShell

Você executou um script que leu um arquivo de texto e descobriu que o arquivo tinha várias entradas erradas? Um editor de texto do PowerShell pode ser útil em tais situações. Você não precisaria iniciar um editor externo. Em vez disso, você pode editar o arquivo sem sair do PowerShell. Legal, não é?

Continue lendo e aprenderá como instalar e usar três editores de texto (Nano, Vim e Emacs) para editar seus arquivos de texto dentro do PowerShell. Este tutorial também abordará os benefícios de cada um para ajudá-lo a escolher qual é o ideal para você.

Vamos começar!

Pré-requisitos

Este tutorial será uma demonstração prática. Se você quiser acompanhar, certifique-se de ter o seguinte:

  • A computer running on Windows 7 or higher. The examples in this tutorial will use Windows 10 version 21H1.
  • Windows PowerShell v3+ ou PowerShell Core v6+. Este tutorial usará a versão 5.1 do Windows PowerShell.
  • A versão mais recente do Chocolatey (v0.11.2 na data de escrita deste tutorial).

Usando Nano como Editor de Texto no PowerShell

Se você é novo em editores de texto baseados em terminal ou precisa apenas fazer uma edição rápida em um arquivo, o Nano é ideal para você. O Nano é leve, intuitivo e mais adequado para tarefas leves de edição de texto em comparação com os editores mais avançados apresentados neste tutorial.

Instalando o Nano

Para instalar o Nano, siga as etapas abaixo.

1. Abra o PowerShell como Administrador.

2. No PowerShell, execute o seguinte comando choco install para instalar o editor de texto Nano. O interruptor (-y) ignorará o prompt de confirmação e procederá com a instalação do pacote.

choco install nano -y

O processo de instalação será semelhante à captura de tela abaixo. Como você pode ver, neste exemplo, a instalação do Nano foi bem-sucedida.

Installing Nano

3. Após a instalação do Nano, execute o seguinte comando para verificar se a instalação foi bem-sucedida e exibir a versão atual.

nano --version

Como você pode ver abaixo, o comando foi bem-sucedido e exibiu a versão do Nano em seu computador.

Verifying the Nano version

Editando e Salvando um Arquivo

Agora que você tem o Nano instalado, é hora de experimentá-lo!

1. Para criar um novo arquivo ou abrir um existente, execute o comando nano e siga-o com o nome do arquivo a ser criado ou aberto. Para os exemplos neste tutorial, você estará criando e editando um script do Windows PowerShell, que usa a extensão de arquivo .ps1. O comando abaixo criará um novo arquivo chamado myPowerShellScript.ps1 no diretório atual.

nano myPowerShellScript.ps1

O editor de texto Nano será aberto dentro do PowerShell. Como você pode ver na imagem abaixo, perto da parte inferior, diz [Novo Arquivo], indicando que o Nano abriu um novo arquivo vazio.

The Nano editor screen

Para ver todos os comandos de atalho disponíveis, pressione CTRL+G no teclado para exibir a documentação de ajuda. Comandos que começam com ^ significam que você deve pressionar a tecla CTRL. Por outro lado, se o comando começar com M, você precisa pressionar a tecla ALT.

2. Em seguida, comece a escrever seu script usando as teclas de seta no teclado para mover o cursor. Por exemplo, digite o comando do Windows PowerShell Write-Host "Hello World!" conforme mostrado na imagem a seguir. Quando executado, este comando imprimirá o texto “Hello World!” no console.

Observe que, uma vez que você modifica o conteúdo do arquivo, a palavra Modificado aparece no canto superior direito do editor. Após editar, pressione CTRL+O para informar ao Nano que você deseja salvar o arquivo.

Using the Write-Out shortcut

3. O Nano solicitará que você insira o nome do arquivo para gravar as alterações. Pressione Enter para confirmar.

Saving the file

4. Finalmente, para sair do Nano, pressione CTRL+X.

Se você tentar sair do editor enquanto houver alterações pendentes, o Nano perguntará se deseja salvar ou ignorar as alterações. Se optar por salvar, pressione Y e especifique o nome do arquivo a ser gravado, como fez no passo 3. Caso contrário, pressione N para descartar as alterações.

Exiting Nano

5. Agora execute seu script executando o seguinte comando. O seguinte comando assume que seu arquivo está na pasta C:\.

& C:\myPowerShellScript.ps1

O script imprimirá a mensagem ‘Olá Mundo!’ no terminal, conforme mostrado na imagem a seguir.

Output of the script

Buscar e Substituir Texto

Agora que você sabe como editar e salvar um arquivo, é hora de aprender a fazer algo um pouco mais avançado: buscar e substituir strings!

Para buscar uma string, siga estes passos.

1. Primeiro, abra o arquivo de texto no editor Nano, se ainda não estiver aberto.

2. Depois de abrir o arquivo de texto, pressione CTRL+W no seu teclado para invocar o comando Onde Está.

3. Em seguida, digite a string a ser procurada ao lado do prompt de Pesquisa e pressione Enter. O exemplo abaixo buscará a palavra Hello.

Searching for a string

Se a string existir no arquivo, o cursor se moverá para ela, como mostrado abaixo.

Finding the string

Para buscar e substituir uma string, proceda da seguinte maneira.

1. Pressione CTRL+\ no seu teclado para abrir o menu de busca e substituição. Ao lado do prompt Pesquisar (para substituir), digite a string que deseja substituir e pressione Enter.

Searching for the word ‘Hello’

2. Em seguida, no prompt de Substituir por, digite a nova palavra e pressione Enter. No exemplo abaixo, a palavra de substituição será Adeus.

Replacing the word

3. Por último, escolha substituir apenas a instância atual ou todas as instâncias da palavra correspondente no arquivo. As opções são:

  • Para substituir apenas a instância única, pressione Y.
  • Para substituir todas as instâncias, pressione A.
  • Para pular esta instância, pressione N.
  • Para cancelar a operação de substituição, pressione CTRL+C.

Neste exemplo, pressione Y para substituir a instância atual.

Confirming the search and replace operation

O Nano informará o número de ocorrências substituídas se a operação de substituição for bem-sucedida, conforme mostrado na imagem a seguir.

Replace occurrence count

4. Pressione CTRL+X no seu teclado para sair do Nano e pressione Y para salvar o buffer. Execute novamente seu script. A nova mensagem ‘Adeus Mundo!’ será impressa no seu terminal.

The script output

Usando o Vim como Editor de Texto do PowerShell

O Vim oferece mais recursos do que o Nano, como recuperação de sessão, coloração de sintaxe, divisão de janelas e auto-completar. O Nano é destinado a edições rápidas de arquivos, enquanto o Vim também é uma alternativa leve a um IDE.

No entanto, os recursos extras que o Vim oferece têm como custo uma curva de aprendizado mais íngreme. Não desanime, porém. O Vim é um excelente editor para aprender.

Instalando o Vim

Agora é hora de começar instalando o Vim.

1. Abra o PowerShell como Administrador.

1. No terminal PowerShell, execute o seguinte comando para instalar o editor Vim.

choco install vim -y

3. Para verificar a versão do Vim, execute o seguinte comando. vim --v

vim --version
Verifying the Vim version

Editar e Salvar um Arquivo

Agora que o Vim está instalado, é hora de colocar a mão na massa e aprender a editar um arquivo. Antes de prosseguir, é importante saber que existem diferentes modos no Vim. Cada modo se comporta de maneira diferente e afeta as ações que você pode realizar no editor.

Os três modos comumente usados são:

  • Normal – O modo padrão assim que você abre o Vim. Este modo permite que você navegue pelo arquivo de texto, mas não adicione novos textos.
  • Inserir – Este modo é onde o Vim permite que você edite o arquivo. Para entrar neste modo, pressione i (insensível a maiúsculas) no teclado. Para sair e voltar ao modo normal, pressione ESC.
  • Comando – Neste modo, o Vim permite que você invoque comandos, como salvar o arquivo, sair do Vim ou visualizar o documento de ajuda, entre outros.

Continuando a editar um arquivo no Vim, siga as etapas abaixo.

1. Para abrir um arquivo no Vim, execute o comando vim seguido pelo nome do arquivo a ser aberto. O comando abaixo abre o arquivo myPowerShellScript.ps1.

vim myPowerShellScript.ps1

O editor de texto Vim será aberto, conforme mostrado na imagem a seguir. Observe que o comando do PowerShell ‘Write-Host’ e a mensagem ‘Hello World!’ são exibidos em cores diferentes, pois o Vim suporta coloração de sintaxe.

The Vim opening view in normal mode

Se precisar visualizar o documento de ajuda do Vim, digite :h e pressione Enter. Pressionar o caractere : enquanto estiver no modo normal alterna o Vim para o modo de comando, enquanto h significa abrir o arquivo de ajuda. Para sair do documento de ajuda, digite :q e pressione Enter para retornar ao modo normal.

Em seguida, entre no modo de inserção pressionando i. Ao entrar no modo de inserção, o texto -- INSERT -- aparece na parte inferior do editor, como mostrado na imagem a seguir.

Vim in insert mode

3. Agora que você está no modo de inserção, edite o arquivo conforme desejar. As teclas de seta permitirão mover o cursor dentro do editor.

4. Após editar, pressione Esc para retornar ao modo normal.

5. Digite o comando :wq e pressione Enter para salvar e fechar o arquivo. O comando w salva os arquivos enquanto q sai do Vim.

Saving the file and existing Vim

Busca e Substituição de Texto

Siga as etapas abaixo para buscar strings no Vim.

1. Abra o arquivo que deseja editar no Vim.

2. No editor Vim, para buscar uma string, execute o comando abaixo, onde <string> é a string que deseja buscar.

:/<string>

Por exemplo, para buscar a palavra Olá, digite:

:/Hello

O Vim destacará as palavras correspondentes, conforme mostrado na imagem a seguir.

Para iterar através de várias instâncias dos textos correspondentes, pressione n para mover para a próxima ocorrência ou a tecla N para a ocorrência anterior.

Vim highlighting the matching words

3. Por último, para substituir cada instância de uma sequência em todo o arquivo, execute o comando abaixo, onde <old> é o texto a ser substituído e <new> é o texto de substituição.

:%s/<old>/<new>/g

Por exemplo, o comando abaixo substituirá a palavra Hello pela palavra Goodbye.

:%s/Hello/Goodbye/g
Performing a search and replace in Vim

Como resultado, o Vim substituirá o texto, como você pode ver abaixo.

Vim showing the search and replace results

4. Digite o comando :wq e pressione Enter para salvar e fechar o arquivo. Execute novamente o script. A saída exibirá a sua nova mensagem.

The script output

Usando o Emacs como Editor de Texto no PowerShell

Assim como o Vim, o Emacs oferece mais recursos do que o Nano. Além disso, o Emacs também é um Ambiente de Desenvolvimento Integrado (IDE). Algumas das características do Emacs incluem coloração de sintaxe, edição de vários arquivos simultaneamente e autoindentação.

Outra vantagem do Emacs sobre os outros editores neste tutorial é que o Emacs não possui modos. O Emacs também é totalmente personalizável. Se algo que o Emacs não oferece, você pode adicionar suporte para isso usando Emacs Lisp.

Instalando o Emacs

Siga as etapas abaixo para instalar o Emacs.

1. Abra o PowerShell como Administrador, se ainda não o fez.

2. No terminal PowerShell, execute o seguinte comando para instalar o Emacs usando o Chocolatey. choco install emacs -y

choco install emacs -y

3. Execute o seguinte comando para verificar a versão do Emacs que você instalou. emacs --version

choco install emacs -y

Você deverá ver uma saída semelhante à imagem abaixo, mostrando a versão do Emacs no seu computador.

Displaying Emacs version

Edição e Salvamento de um Arquivo

Então você instalou o Emacs. E agora? Mergulhe e comece a editar um arquivo de texto para ver o Emacs em ação. Siga os passos abaixo para editar e salvar um arquivo de texto.

1. Para abrir um arquivo no Emacs, execute o comando emacs seguido pelo nome do arquivo no PowerShell. O comando abaixo abre o arquivo myPowerShellScript.ps1 para edição. O interruptor -nw indica ao emacs para abrir o editor dentro da janela do terminal atual (PowerShell) e não em uma GUI separada. emacs -nw myPowerShellScript.ps1

emacs -nw myPowerShellScript.ps1

Vários menus suspensos estarão disponíveis no topo do editor. Para visualizar a documentação de ajuda do Emacs, clique no menu suspenso Ajuda.

Opening a file in Emacs

2. Edite o arquivo conforme desejar e, após concluir suas edições, salve as alterações pressionando CTRL+X e CTRL+S consecutivamente. Você verá a confirmação de salvamento do arquivo na parte inferior do editor, como mostrado abaixo.

Saving the file

3. Para sair do editor, pressione CTRL+X no seu teclado, seguido por CTRL+C.

Procurando e Substituindo Texto

Agora que você conhece o básico do Emacs, como executar uma operação de busca e substituição? Siga os passos abaixo para fazê-lo.

1. Pressione CTRL+S e digite o texto a ser buscado ao lado do prompt I-search para procurar por um texto. O exemplo abaixo busca pela palavra Hello.

Searching for text

2. Para iniciar a opção de busca e substituição, pressione ALT+% no seu teclado (o mesmo que ALT+SHIFT+5).

3. Em seguida, digite o texto a ser buscado ao lado do prompt Query replace: e pressione Enter.

Searching for the text to replace

4. Depois, digite o texto de substituição ao lado do prompt e pressione Enter.

Entering the replacement text

5. Por fim, no prompt Query replacing <old text> with <new text>:, pressione ! para confirmar e substituir todas as ocorrências do texto.

Replacing all instances of the matching text

Como resultado, o Emacs substituiu o texto, como você pode ver abaixo. Além disso, o Emacs mostra o número de ocorrências do texto substituído na parte inferior do editor.

Emacs replaced the search text

6. Saia do editor pressionando CTRL+X no seu teclado, seguido por CTRL+C. Execute o script novamente. A saída irá mostrar sua nova mensagem.

The script output

Conclusão

Ao longo deste tutorial, você aprendeu o básico de como usar três editores de texto do PowerShell e os benefícios de cada um. Da próxima vez que precisar editar um arquivo pelo terminal, não perca tempo configurando um editor de texto externo. Simplesmente abra o Nano, Vim ou Emacs e faça suas alterações em poucos toques de tecla!

Qual editor de texto do PowerShell você mais gostou? Você conhece outros editores de texto que não foram mencionados neste tutorial?

Source:
https://adamtheautomator.com/powershell-text-editor/