Hoe bestanden bewerken met een echte PowerShell-teksteditor

Heb je een script uitgevoerd dat een tekstbestand las en ontdekte dat het bestand verschillende onjuiste vermeldingen bevatte? Een PowerShell-teksteditor kan handig zijn in dergelijke situaties. Je hoeft geen externe editor te starten. In plaats daarvan kun je het bestand bewerken zonder PowerShell te verlaten. Hoe gaaf is dat?

Blijf lezen, en je leert hoe je drie teksteditors (Nano, Vim en Emacs) installeert en gebruikt om je tekstbestanden binnen PowerShell te bewerken. Deze tutorial zal ook de voordelen van elk behandelen om je te helpen kiezen welke het beste bij je past.

Laten we beginnen!

Vereisten

Deze tutorial zal een praktische demonstratie zijn. Als je wilt volgen, zorg er dan voor dat je het volgende hebt:

  • A computer running on Windows 7 or higher. The examples in this tutorial will use Windows 10 version 21H1.
  • Windows PowerShell v3+ of PowerShell Core v6+. Deze tutorial gebruikt Windows PowerShell-versie 5.1.
  • De nieuwste versie van Chocolatey (v0.11.2 op het moment van schrijven van deze tutorial).

Hoe Nano te gebruiken als een PowerShell-teksteditor

Als je nieuw bent met op tekst gebaseerde teksteditors of alleen snel een bewerking aan een bestand moet maken, is Nano ideaal voor jou. Nano is lichtgewicht, intuïtief en meer geschikt voor eenvoudige tekstbewerkingstaken in vergelijking met de geavanceerdere editors in deze handleiding.

Nano installeren

Om Nano te installeren, volg de onderstaande stappen.

1. Open PowerShell als Administrator.

2. Voer in PowerShell de volgende choco install opdracht uit om de Nano teksteditor te installeren. De (-y) schakelaar zal de bevestigingsprompt omzeilen en doorgaan met het installeren van het pakket.

choco install nano -y

Het installatieproces ziet er vergelijkbaar uit met de onderstaande schermafbeelding. Zoals je kunt zien, was de Nano-installatie in dit voorbeeld succesvol.

Installing Nano

3. Nadat Nano is geïnstalleerd, voer je de volgende opdracht uit om te controleren of de installatie succesvol was en de huidige versie weer te geven.

nano --version

Zoals hieronder te zien is, was de opdracht succesvol en werd de Nano-versie op je computer weergegeven.

Verifying the Nano version

Een bestand bewerken en opslaan

Nu je Nano hebt geïnstalleerd, is het tijd om het uit te proberen!

1. Om een nieuw bestand te maken of een bestaand bestand te openen, voer je het nano-commando uit en volg je het met de bestandsnaam die je wilt maken of openen. Voor de voorbeelden in deze tutorial maak en bewerk je een Windows PowerShell-script, dat de bestandsextensie .ps1 gebruikt. Het onderstaande commando zal een nieuw bestand genaamd myPowerShellScript.ps1 in de huidige map maken.

nano myPowerShellScript.ps1

De Nano-teksteditor wordt geopend binnen PowerShell. Zoals je kunt zien op de onderstaande afbeelding, staat onderaan [New File], wat aangeeft dat Nano een nieuw leeg bestand heeft geopend.

The Nano editor screen

Om alle beschikbare sneltoetscommando’s te bekijken, druk je op CTRL+G op je toetsenbord om de helppagina weer te geven. Commando’s die beginnen met ^ betekenen dat je op de CTRL-toets moet drukken. Aan de andere kant, als het commando begint met M, moet je op de ALT-toets drukken.

2. Begin vervolgens met het schrijven van je script met behulp van de pijltoetsen op je toetsenbord om de cursor te verplaatsen. Typ bijvoorbeeld het Windows PowerShell-commando Write-Host "Hello World!", zoals weergegeven in de volgende afbeelding. Wanneer uitgevoerd, zal dit commando de tekst “Hello World!” naar de console afdrukken.

Merk op dat zodra je de inhoud van het bestand wijzigt, het woord Modified verschijnt in de rechterbovenhoek van de editor. Na het bewerken, druk op CTRL+O om Nano te vertellen dat je het bestand wilt opslaan.

Using the Write-Out shortcut

3. Nano vraagt je om de bestandsnaam in te voeren om de wijzigingen op te slaan. Druk op Enter om te bevestigen.

Saving the file

4. Tenslotte, om Nano te verlaten, druk op CTRL+X.

Als u de editor probeert te verlaten terwijl er nog wijzigingen zijn, zal Nano u vragen om de wijzigingen op te slaan of te negeren. Als u ervoor kiest om op te slaan, druk op Y en specificeer de bestandsnaam om op te slaan zoals u deed in stap 3. Druk anders op N om de wijzigingen te negeren.

Exiting Nano

5. Voer nu uw script uit door het volgende commando uit te voeren. Het volgende commando gaat ervan uit dat uw bestand zich in de C:\ map bevindt.

& C:\myPowerShellScript.ps1

Het script zal de boodschap ‘Hello World!’ naar het terminalvenster afdrukken, zoals weergegeven in de volgende afbeelding.

Output of the script

Zoeken en Tekst Vervangen

Nu u weet hoe u een bestand kunt bewerken en opslaan, is het tijd om iets iets geavanceerder te leren: zoeken naar en vervangen van strings!

Volg deze stappen om naar een string te zoeken.

1. Open eerst het tekstbestand in de Nano-editor, indien nog niet geopend.

2. Nadat u het tekstbestand heeft geopend, druk op CTRL+W op uw toetsenbord om het Waar is commando te activeren.

3. Typ vervolgens de te zoeken string naast het Zoek-prompt en druk op Enter. Het onderstaande voorbeeld zal zoeken naar het woord Hello.

Searching for a string

Als de string bestaat in het bestand, zal uw cursor zich ernaast verplaatsen, zoals hieronder getoond.

Finding the string

Om een string te zoeken en vervangen, volgt u deze stappen.

1. Druk op CTRL+\ op uw toetsenbord om het zoek- en vervangmenu te openen. Naast het Te zoeken (te vervangen) prompt, typt u de string die u wilt vervangen, en druk op Enter.

Searching for the word ‘Hello’

2. Typ vervolgens bij het Vervangen door-prompt het nieuwe woord in en druk op Enter. In het onderstaande voorbeeld zal het vervangende woord Afscheid. zijn.

Replacing the word

3. Kies tot slot of u alleen de huidige instantie wilt vervangen of alle instanties van het overeenkomende woord in het bestand. De keuzes zijn:

  • Om slechts één instantie te vervangen, druk op Y.
  • Om alle instanties te vervangen, druk op A.
  • Om deze instantie over te slaan, druk op N.
  • Om de vervangingsbewerking te annuleren, druk op CTRL+C.

In dit voorbeeld drukt u op Y om de huidige instantie te vervangen.

Confirming the search and replace operation

Nano zal het aantal vervangen voorkomens vermelden als de vervangingsbewerking succesvol is, zoals weergegeven in de volgende afbeelding.

Replace occurrence count

4. Druk op CTRL+X op uw toetsenbord om Nano te verlaten en druk op Y om de buffer op te slaan. Voer uw script opnieuw uit. Het nieuwe bericht ‘Afscheid Wereld!’ zal worden afgedrukt in uw terminal.

The script output

Het gebruik van Vim als een PowerShell-teksteditor

Vim biedt meer functies dan Nano, zoals sessieherstel, syntaxis-kleuring, venstersplitsing en automatische aanvulling. Nano is bedoeld voor snelle bestandsbewerkingen, terwijl Vim ook een lichtgewicht alternatief is voor een IDE.

Maar de extra functies die Vim biedt, gaan gepaard met een steilere leercurve. Word echter niet ontmoedigd. Vim is een uitstekende editor om te leren.

Installatie van Vim

Nu is het tijd om aan de slag te gaan door Vim te installeren.

1. Open PowerShell als beheerder.

2. In de PowerShell-terminal, voer het volgende commando uit om de Vim-editor te installeren.

choco install vim -y

3, Om de Vim-versie te verifiëren, voer het volgende commando uit. vim --v

vim --version
Verifying the Vim version

Bestanden bewerken en opslaan

Nu je Vim hebt geïnstalleerd, is het tijd om aan de slag te gaan en te leren hoe je een bestand bewerkt. Voordat je verder gaat, moet je weten dat er verschillende modi zijn in Vim. Elke modus gedraagt zich anders en beïnvloedt welke acties je kunt uitvoeren in de editor.

De drie veelgebruikte modi zijn:

  • Normaal – De standaardmodus zodra je Vim opent. In deze modus kun je door het tekstbestand navigeren, maar geen nieuwe tekst toevoegen.
  • Insert – In deze modus kun je het bestand bewerken. Om deze modus binnen te gaan, druk op i (hoofdletteronafhankelijk) op het toetsenbord. Om te verlaten en terug te keren naar de normale modus, druk op ESC.
  • Command – In deze modus kun je commando’s uitvoeren zoals het opslaan van het bestand, Vim verlaten of het helpdocument bekijken, onder andere.

Ga verder met het bewerken van een bestand in Vim door de onderstaande stappen te volgen.

1. Om een bestand te openen in Vim, voer het vim-commando uit gevolgd door de bestandsnaam om te openen. Het onderstaande commando opent het bestand myPowerShellScript.ps1.

vim myPowerShellScript.ps1

De vim-teksteditor wordt geopend, zoals weergegeven in de volgende afbeelding. Let op dat de PowerShell-opdracht ‘Write-Host’ en het bericht ‘Hello World!’ in verschillende kleuren worden weergegeven, omdat Vim syntaxismarkering ondersteunt.

The Vim opening view in normal mode

Als u het Vim-helpdocument wilt bekijken, typt u :h en drukt u op Enter. Door het indrukken van het :-teken in de normale modus schakelt Vim over naar de opdrachtmodus, terwijl h betekent dat het helpbestand wordt geopend. Om het helpdocument te verlaten, typt u :q en drukt u op Enter om terug te keren naar de normale modus.

Voer vervolgens de invoeg modus in door op i te drukken. Wanneer u de invoeg modus binnengaat, verschijnt de tekst -- INSERT -- onderaan de editor, zoals weergegeven in de volgende afbeelding.

Vim in insert mode

3. Nu u zich in de invoegmodus bevindt, bewerkt u het bestand zoals u wilt. Met de pijltoetsen kunt u de cursor binnen de editor verplaatsen.

4. Na het bewerken drukt u op Esc om terug te keren naar de normale modus.

5. Typ de opdracht :wq en druk op Enter om het bestand op te slaan en te sluiten. De opdracht w slaat de bestanden op terwijl q Vim afsluit.

Saving the file and existing Vim

Text zoeken en vervangen

Volg de onderstaande stappen om te zoeken naar tekstreeksen in Vim.

1. Open het bestand dat u wilt bewerken in Vim.

2. Op de Vim-editor, om een tekenreeks te zoeken, voert u de onderstaande opdracht uit, waar <string> de te zoeken tekenreeks is.

:/<string>

Bijvoorbeeld, om het woord Hallo te zoeken, typt u:

:/Hello

Vim zal de overeenkomende woorden markeren, zoals weergegeven in de volgende afbeelding.

Om door meerdere exemplaren van de overeenkomende teksten te bladeren, drukt u op n om naar het volgende exemplaar te gaan of op de toets N voor het vorige exemplaar.

Vim highlighting the matching words

3. Ten slotte, om elke instantie van een tekenreeks in het hele bestand te vervangen, voert u de onderstaande opdracht uit, waarbij <oud> de tekst is die moet worden vervangen en <nieuw> de vervangingstekst is.

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

Bijvoorbeeld, de onderstaande opdracht zal het woord Hallo vervangen door het woord Afscheid.

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

Als gevolg daarvan vervangt Vim de tekst zoals u hieronder kunt zien.

Vim showing the search and replace results

4. Typ de opdracht :wq en druk op Enter om het bestand op te slaan en te sluiten. Voer het script opnieuw uit. De uitvoer zal uw nieuwe bericht weergeven.

The script output

Gebruik van Emacs als een PowerShell-teksteditor

Net als Vim biedt Emacs meer functies dan Nano. Bovendien is Emacs ook een Geïntegreerde Ontwikkelomgeving (IDE). Enkele van de functies van Emacs zijn syntaxiskleuring, het gelijktijdig bewerken van meerdere bestanden en automatische inspringing.

Nog een voordeel van Emacs ten opzichte van de andere editors in deze handleiding is dat Emacs modusloos is. Emacs is ook volledig aanpasbaar. Als er iets is dat Emacs niet biedt, kunt u zelf ondersteuning toevoegen met behulp van Emacs Lisp.

Emacs installeren

Volg de onderstaande stappen om Emacs te installeren.

1. Open PowerShell als Administrator, als je dat nog niet hebt gedaan.

2. In de PowerShell-terminal voert u de volgende opdracht uit om Emacs te installeren met behulp van Chocolatey. choco install emacs -y

choco install emacs -y

3. Voer de volgende opdracht uit om de versie van Emacs te verifiëren die u hebt geïnstalleerd. emacs --version

choco install emacs -y

U zou een uitvoer moeten zien die vergelijkbaar is met de onderstaande afbeelding, waarop de versie van Emacs op uw computer wordt weergegeven.

Displaying Emacs version

Bestand bewerken en opslaan

Dus je hebt Emacs geïnstalleerd. Wat nu? Duik erin en begin een tekstbestand te bewerken om Emacs in actie te zien. Volg de onderstaande stappen om een tekstbestand te bewerken en op te slaan.

1. Om een bestand te openen in Emacs, voert u het emacs commando uit gevolgd door de bestandsnaam in PowerShell. Het onderstaande commando opent het bestand myPowerShellScript.ps1 voor bewerking. De -nw schakelaar vertelt emacs om de editor te openen binnen het huidige terminalvenster (PowerShell) en niet in een aparte GUI. emacs -nw myPowerShellScript.ps1

emacs -nw myPowerShellScript.ps1

Er zullen verschillende vervolgkeuzemenu’s beschikbaar zijn bovenaan de editor. Om de Emacs-helpdocumentatie te bekijken, klikt u op het Help-vervolgkeuzemenu.

Opening a file in Emacs

2. Bewerk het bestand zoals u wilt en zodra u uw bewerkingen hebt voltooid, slaat u de wijzigingen op door achtereenvolgens op CTRL+X en CTRL+S te drukken. U ziet de bevestiging van het opslaan van het bestand onderaan de editor, zoals hieronder wordt weergegeven.

Saving the file

3. Om de editor te verlaten, drukt u op CTRL+X op uw toetsenbord, gevolgd door CTRL+C.

Text zoeken en vervangen

Nu je de basisprincipes van Emacs kent, hoe voer je dan een zoek- en vervangbewerking uit? Volg de onderstaande stappen om dit te doen.

1. Druk op CTRL+S en typ de tekst in naast het I-search-prompt om te zoeken naar een tekst. Het onderstaande voorbeeld zoekt naar het woord Hello.

Searching for text

2. Om de zoek- en vervangoptie te activeren, druk op ALT+% op je toetsenbord (hetzelfde als ALT+SHIFT+5).

3. Typ vervolgens de tekst om te zoeken naast het Query vervangen:-prompt en druk op Enter.

Searching for the text to replace

4. Typ vervolgens de vervangingstekst naast de prompt en druk op Enter.

Entering the replacement text

5. Tenslotte, bij de Query vervangen <oude tekst> door <nieuwe tekst>:-prompt, druk op ! om te bevestigen en alle voorkomens van de tekst te vervangen.

Replacing all instances of the matching text

Als gevolg hiervan heeft Emacs de tekst vervangen, zoals je hieronder kunt zien. Daarnaast toont Emacs het aantal voorkomens van de vervangen tekst onderaan de editor.

Emacs replaced the search text

6. Verlaat de editor door op CTRL+X op je toetsenbord te drukken, gevolgd door CTRL+C. Voer het script opnieuw uit. De uitvoer zal je nieuwe bericht weergeven.

The script output

Conclusie

Tijdens deze tutorial heb je de basisprincipes geleerd van het gebruik van drie PowerShell-teksteditors en de voordelen van elk. De volgende keer dat je een bestand vanuit de terminal moet bewerken, verspil geen tijd met het instellen van een externe teksteditor. Open gewoon Nano, Vim of Emacs en maak je wijzigingen in een paar toetsaanslagen!

Welke PowerShell-teksteditor vond je het beste? Weet je van andere teksteditors die niet in deze tutorial stonden?

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