Enkele en dubbele aanhalingstekens

In principe gebruik je zoveel mogelijk een 'single quote' als je tekst (en dan hebben we het over een string) gebruikt in variabelen. Je kunt echter ook dubbele aanhalingstekens (") gebruiken.

In onderstaand voorbeeld ga je het verschil tussen beide ontdekken. Let op dat alle commando's rechtstreeks in PowerShell getypt worden en niet in een script.

$a = 'MediaTechnologie'

$b = 'Ik doe de opleiding $a'  (let op: enkele aanhalingstekens)

$c = "Ik doe de opleiding $a"  (let op: dubbele aanhalingstekens)

De output van de variabelen $b en $c zullen totaal verschillend zijn, zie het voorbeeld hieronder.

<afbeelding 1>

Dat zou ervoor pleiten dat je juist altijd beter dubbele aanhalingstekens kunt gebruiken. Deze hebben echter ook een nadeel. Als je ondertussen de inhoud van de variabele update zal deze niet geüpdatet worden tussen de dubbele aanhalingstekens. Met andere woorden: de waarde van de variabele die je tussen de dubbele aanhalingste kens gebruikt, wordt de eerste keer ingelezen en daarna niet geüpdatet. Dat is wel iets om rekening mee te houden. Overigens heb je hier in een script minder last van omdat de variabelen elke keer bij het invoeren opnieuw worden ingelezen.

<afbeelding 2>

Het scriptje met de sommen eerder in dit hoofdstuk zou je dus ook als volgt kunnen schrijven:

$a = 5

$b = 2

$som $a + $b

$keer = $a * $b

"De som van $a en $b is gelijk aan $som" "Het product van $a en $b is gelijk aan $keer"

Je ziet dat het iets leesbaarder geworden is doordat je de variabelen gewoon tussen de aanhalingstekens kunt laten staan en je niet alle 'stukjes' aan elkaar hoeft te plakken met het + -teken.

Wat nu als je het volgende wilt bereiken?

$d = 'MediaTechnologie'

"$d heeft als waarde $d"

De output wordt dan: MediaTechnologie heeft als waarde MediaTechnologie

Door het `-teken (backtick) als escape-teken te gebruiken vertel je PowerShell dat de variabele niet als variabele gelezen moet worden maar als exacte tekst.

"`$d heeft als waarde $d" geeft "$d heeft als waarde MediaTechnologie".

Bij het maken van een script zul je veel gebruikmaken van variabelen, juist om het script herbruikbaar te maken. Het maken van een script kost veel tijd en het goed testen ook. Het grote voordeel is dat je het daarna veelvuldig kunt gebruiken.