Miljøvariabler er variabler som sendes til programmer av kommandolinje eller det grafiske skallet. Når det vises til en miljøvariabel, blir det referert til dens verdi (hva variabelen er definert som).
Selv om det er en rekke miljøvariabler som bare påvirker kommandolinjen eller det grafiske skallet (for eksempel PATH eller HOME), er det også flere som direkte påvirker hvordan Rubin manus henrette.
Tips: Ruby-miljøvariabler ligner de som finnes i Windows OS. For eksempel kan Windows-brukere være kjent med en TMP-brukervariabel for å definere plasseringen av den midlertidige mappen for den for øyeblikket påloggede brukeren.
Få tilgang til miljøvariabler fra Ruby
Ruby har direkte tilgang til miljøvariabler via ENV hash. Miljøvariabler kan leses direkte eller skrives til ved å bruke indeksoperatør med et strenge argument.
Legg merke til at skriving til miljøvariabler bare vil ha effekt på barneprosesser i Ruby-skriptet. Andre påkallinger av skriptet vil ikke se endringene i miljøvariabler.
#! / usr / bin / env ruby
# Skriv ut noen variabler
setter ENV ['PATH']
setter ENV ['EDITOR']
# Endre en variabel, og start deretter et nytt program
ENV ['EDITOR'] = 'gedit'
`juksemiljø_variables - legge til`
Overfører miljøvariabler til rubin
For å sende miljøvariabler til Ruby, angi ganske enkelt den miljøvariabelen i skallet. Dette varierer litt mellom operativsystemer, men konseptene forblir de samme.
Hvis du vil angi en miljøvariabel i Windows-ledeteksten, bruker du kommandoen.
> sett TEST = verdi
For å sette en miljøvariabel på Linux eller OS X, bruk eksportkommandoen. Selv om miljøvariabler er en normal del av Bash-skallet, er det bare variabler som har vært det eksportert vil være tilgjengelig i programmer lansert av Bash-skallet.
$ eksport TEST = verdi
Alternativt, hvis miljøvariabelen bare vil bli brukt av programmet som skal kjøres, kan du definere eventuelle miljøvariabler før navnet på kommandoen. Miljøvariabelen vil bli overført til programmet mens det kjøres, men ikke lagret. Eventuelle ytterligere påkallinger av programmet vil ikke ha denne miljøvariabelen satt.
$ EDITOR = gedit juksemiljø_variables - lagt til
Miljøvariabler brukt av Ruby
Det er en rekke miljøvariabler som påvirker hvordan Ruby-tolken fungerer.
- RUBYOPT - Eventuelle kommandolinjebrytere her vil bli lagt til eventuelle brytere som er spesifisert på kommandolinjen.
- RUBYPATH - Når den brukes med -S-bryteren på kommandolinjen, vil banene som er oppført i RUBYPATH legges til banene du søker etter når du leter etter Ruby-skript. Stiene i RUBYPATH går foran stiene som er oppført i PATH.
- RUBYLIB - Listen over stier her vil bli lagt til listen over stier som Ruby bruker for å søke etter biblioteker som er inkludert i programmet med krever metode. Stiene i RUBYLIB blir søkt før andre kataloger.