Ruby-omgevingsvariabelen gebruiken

Omgevingsvariabelen zijn variabelen die door de opdrachtregel of de grafische schil. Wanneer naar een omgevingsvariabele wordt verwezen, wordt er naar de waarde ervan verwezen (wat de variabele ook is).

Hoewel er een aantal omgevingsvariabelen zijn die alleen van invloed zijn op de opdrachtregel of de grafische shell zelf (zoals PATH of HOME), zijn er ook verschillende die rechtstreeks van invloed zijn op hoe Ruby-scripts uitvoeren.

Tip: Ruby-omgevingsvariabelen zijn vergelijkbaar met die in het Windows-besturingssysteem. Windows-gebruikers kunnen bijvoorbeeld bekend zijn met een TMP-gebruikersvariabele om de locatie van de tijdelijke map te definiëren voor de momenteel ingelogde gebruiker.

Toegang tot omgevingsvariabelen vanuit Ruby

Ruby heeft directe toegang tot omgevingsvariabelen via de ENV hasj. Omgevingsvariabelen kunnen direct worden gelezen of geschreven met behulp van de index operator met een stringargument.

Merk op dat het schrijven naar omgevingsvariabelen alleen effect heeft op onderliggende processen van het Ruby-script. Andere aanroepen van het script zullen de veranderingen in omgevingsvariabelen niet zien.

instagram viewer

#! / usr / bin / env robijn
# Druk enkele variabelen af
zet ENV ['PATH']
zet ENV ['EDITOR']
# Wijzig een variabele en start een nieuw programma
ENV ['EDITOR'] = 'gedit'
`cheat environment_variables --add`

Omgevingsvariabelen doorgeven aan Ruby

Om omgevingsvariabelen aan Ruby door te geven, stelt u die omgevingsvariabele eenvoudig in de shell in. Dit varieert enigszins tussen besturingssystemen, maar de concepten blijven hetzelfde.

Gebruik de opdracht set om een ​​omgevingsvariabele in te stellen op de opdrachtprompt van Windows.

> stel TEST = waarde in

Om een ​​omgevingsvariabele in te schakelen Linux of OS X, gebruik de exportopdracht. Hoewel omgevingsvariabelen een normaal onderdeel zijn van de Bash-shell, zijn dit alleen variabelen geëxporteerd zal beschikbaar zijn in programma's die door de Bash-shell worden gelanceerd.

$ export TEST = waarde

Als alternatief, als de omgevingsvariabele alleen zal worden gebruikt door het programma dat op het punt staat te worden uitgevoerd, kunt u alle omgevingsvariabelen definiëren vóór de naam van de opdracht. De omgevingsvariabele wordt tijdens het uitvoeren aan het programma doorgegeven, maar niet opgeslagen. Voor verdere aanroepen van het programma is deze omgevingsvariabele niet ingesteld.

$ EDITOR = gedit cheat environment_variables --add

Omgevingsvariabelen gebruikt door Ruby

Er zijn een aantal omgevingsvariabelen die van invloed zijn op hoe de Ruby-interpreter werkt.

  • RUBYOPT - Alle schakelopties voor de opdrachtregel worden hier toegevoegd aan alle schakelaars die op de opdrachtregel zijn gespecificeerd.
  • RUBYPATH - Bij gebruik met de -S-schakelaar op de opdrachtregel, zullen de paden in RUBYPATH worden toegevoegd aan de paden die worden gezocht bij het zoeken naar Ruby-scripts. De paden in RUBYPATH gaan vooraf aan de paden in PATH.
  • RUBYLIB - De lijst met paden hier zal worden toegevoegd aan de lijst met paden die Ruby gebruikt om te zoeken naar bibliotheken die zijn opgenomen in het programma met de vereist methode. De paden in RUBYLIB worden doorzocht vóór andere mappen.
instagram story viewer