Hoe Bash Shell Scripts te maken en uit te voeren op Windows 10

  • Chris Hoffman

    @chrisbhoffman

  • bijgewerkt op 7 maart 2018, 2:31pm EDT

met de komst van de Bash shell van Windows 10, kunt u nu Bash shell-scripts maken en uitvoeren op Windows 10. U kunt ook Bash commando ‘ s opnemen in een Windows batch bestand of PowerShell script.

zelfs als je weet wat je doet, is dit niet noodzakelijk zo eenvoudig als het lijkt. Windows en UNIX gebruiken verschillende end-Of-line tekens, en het Windows bestandssysteem is toegankelijk op een andere locatie in de Bash-omgeving.

Hoe schrijf je een Bash Script op Windows 10

gerelateerd: Hoe installeer en gebruik je de Linux Bash Shell op Windows 10

bij het schrijven van shell scripts op Windows, houd er rekening mee dat Windows en UNIX-achtige systemen zoals Linux verschillende “end Of line” tekens gebruiken in tekstbestanden in shell scripts.

advertentie

met andere woorden, dit betekent dat je niet eenvoudig een shell script in Kladblok kunt schrijven. Sla het bestand op in Kladblok en het zal niet correct worden geïnterpreteerd door Bash. Echter, u kunt meer geavanceerde tekstverwerkers gebruiken–bijvoorbeeld, Notepad++ kunt u een bestand UNIX end-of-line tekens geven door te klikken op Bewerken > EOL conversie > UNIX/OSX formaat.

U kunt echter beter het shell script in de Bash omgeving zelf schrijven. De op Ubuntu gebaseerde Bash-omgeving wordt geleverd met zowel de vi als nano-tekstverwerkers. De vi editor is krachtiger, maar als je het nog nooit eerder hebt gebruikt, wil je misschien beginnen met nano. Het is makkelijker te gebruiken als je nieuw bent.

bijvoorbeeld, om een bash script in nano aan te maken, zou je het volgende commando in bash uitvoeren:

nano ~/myscript.sh

Dit zou de nano teksteditor openen die naar een bestand met de naam “verwijst myscript.sh” in de home directory van uw gebruikersaccount. (Het ” ~ ” teken staat voor je persoonlijke map, dus het volledige pad is /home/username/myscript.sh.)

Start uw shell script met de regel:

#!/bin/bash

gerelateerd: The Beginner ’s Guide to Shell Scripting: the Basics

advertentie

Voer de commando’ s in die u wilt uitvoeren, elk op zijn eigen regel. Het script zal elk commando op zijn beurt uitvoeren. Voeg een ” # “teken voor een regel toe om het te behandelen als een” commentaar”, iets dat jou en andere mensen helpt het script te begrijpen, maar dat niet wordt uitgevoerd als een commando. Voor meer geavanceerde trucs, raadpleeg een meer gedetailleerde gids voor Bash scripts op Linux. Dezelfde technieken werken in Bash op Ubuntu op Windows.

merk op dat er geen manier is om Windows-programma ‘ s te draaien vanuit de Bash-omgeving. Je bent beperkt tot Linux terminal commando ’s en hulpprogramma’ s, net zoals je zou zijn op een typisch Linux systeem.

bijvoorbeeld, laten we hier gewoon een standaard “hello world” script gebruiken als voorbeeld:

#!/bin/bash # set the STRING variable STRING="Hello World!" # print the contents of the variable on screen echo $STRING

Als u de nano teksteditor gebruikt, kunt u het bestand opslaan door op Ctrl+O te drukken en vervolgens in te voeren. Sluit de editor door op Ctrl+X te drukken.

Maak het Script uitvoerbaar en voer het dan uit

u wilt waarschijnlijk het script uitvoerbaar maken zodat u het gemakkelijker kunt uitvoeren. Op Linux betekent dit dat je het script bestand de uitvoerbare toestemming moet geven. Om dit te doen, voer je het volgende commando uit in de terminal, waarbij je het naar je script wijst:

advertentie

om het script uit te voeren, kun je het nu in de terminal uitvoeren door het pad te typen. Wanneer u het script in de toekomst wilt starten, opent u gewoon de Bash shell en typt u het pad naar het script.

~/myscript.sh

(Als het script is in de huidige map, u kunt uitvoeren met ./myscript.sh)

Hoe te Werken Met Windows-Bestanden in een Bash-Script

in VERBAND: Hoe om Toegang te krijgen tot Uw Ubuntu-Bash-Bestanden in Windows (en Uw Windows-Systeem Schijf in Bash)

om toegang Te krijgen tot Windows-bestanden in het script, moet u opgeven op hun pad onder /mnt/c, niet van hun Windows-pad. Bijvoorbeeld, als u de C:\Gebruikers \ Bob \ Downloads \ test.txt bestand, moet je het /mnt/C/Users/Bob/Downloads/test opgeven.txt pad. Raadpleeg onze gids voor het bestand locaties in Windows 10 Bash shell voor meer details.

hoe Bash-opdrachten in een Batch-of PowerShell-Script op te nemen

gerelateerd: Hoe stelt u uw standaard Linux-distributie in op Windows 10

Als u ten slotte een bestaand batch-bestand of PowerShell-script hebt waarin u opdrachten wilt opnemen, kunt u Bash-opdrachten rechtstreeks uitvoeren met behulp van de opdrachtbash -c.

advertentie

om bijvoorbeeld een Linux-opdracht uit te voeren in een opdrachtprompt of PowerShell-venster, kunt u het volgende commando uitvoeren:

bash -c "command"

Met deze truc kunt u Bash-Opdrachten toevoegen aan batchbestanden of PowerShell-scripts. Het Bash shell venster verschijnt wanneer een Bash commando wordt uitgevoerd.

Update: Als u meerdere Linux-omgevingen hebt geïnstalleerd, kunt u het commando wslconfig gebruiken om de standaard Linux-omgeving te kiezen die wordt gebruikt wanneer u het commando bash -c uitvoert.

om een snelkoppeling naar een Bash script te maken vanuit Windows, maak gewoon een snelkoppeling zoals normaal. Voor het doel van de snelkoppeling, gebruik je het bash -c commando dat we hierboven beschreven hebben en richt het op het Bash script dat je gemaakt hebt.

advertentie

bijvoorbeeld, je zou een snelkoppeling op ” bash -c "~/myscript.sh" ” wijzen om het voorbeeld script hierboven uit te voeren. U kunt deze opdracht ook gewoon uitvoeren vanuit een opdrachtprompt of PowerShell-venster.

Chris Hoffman Chris Hoffman is hoofdredacteur van How-To Geek. Hij schrijft al meer dan tien jaar over technologie en was twee jaar columnist bij PCWorld. Chris heeft geschreven voor de New York Times, werd geïnterviewd als een technologie-expert op TV-stations als Miami ‘ s NBC 6, en had zijn werk gedekt door nieuws outlets zoals de BBC. Sinds 2011 heeft Chris meer dan 2000 artikelen geschreven die bijna een miljard keer zijn gelezen—en dat is gewoon hier bij How-To Geek.Volledige Bio lezen ”

Geef een antwoord

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *