Använda Ruby miljövariabler

Miljövariabler är variabler som skickas till program av kommandorad eller det grafiska skalet. När en miljövariabel hänvisas till hänvisas sedan dess värde (oavsett variabeln definieras som).

Även om det finns ett antal miljövariabler som bara påverkar kommandoraden eller det grafiska skalet (som PATH eller HOME), finns det också flera som direkt påverkar hur Ruby manus Kör.

Tips: Ruby-miljövariabler liknar de som finns i Windows OS. Till exempel kan Windows-användare kännas med en TMP-användarvariabel för att definiera platsen för den temporära mappen för den för närvarande inloggade användaren.

Tillgång till miljövariabler från Ruby

Ruby har direkt tillgång till miljövariabler via ENV hash. Miljövariabler kan läsas direkt eller skrivas till med hjälp av indexoperatör med ett strängargument.

Observera att skrivning till miljövariabler bara kommer att påverka barnprocesser i Ruby-skriptet. Andra invokationer av skriptet ser inte förändringarna i miljövariabler.

#! / usr / bin / env ruby
# Skriv ut några variabler
instagram viewer

sätter ENV ['PATH']
sätter ENV ['EDITOR']
# Ändra en variabel och starta sedan ett nytt program
ENV ['EDITOR'] = 'gedit'
"fuska miljövarianter - lägg till"

Överför miljövariabler till Ruby

För att skicka miljövariabler till Ruby, ställ bara in den miljövariabeln i skalet. Detta varierar något mellan operativsystem, men koncepten förblir desamma.

Använd inställningskommandot för att ställa in en miljövariabel i Windows-kommandotolken.

> ställa in TEST = värde

För att ställa in en miljövariabel på Linux eller OS X, använd exportkommandot. Även om miljövariabler är en normal del av Bash-skalet, är det bara variabler som har varit det exporteras kommer att finnas tillgängliga i program som lanseras av Bash-skalet.

$ export TEST = värde

Alternativt, om miljövariabeln endast kommer att användas av programmet som ska köras, kan du definiera alla miljövariabler innan kommandot namn. Miljövariabeln överförs till programmet när det körs, men sparas inte. Alla ytterligare anrop av programmet kommer inte att ha denna miljövariabel inställd.

$ EDITOR = gedit cheat environment_variables - lägg till

Miljövariabler som används av Ruby

Det finns ett antal miljövariabler som påverkar hur Ruby-tolken fungerar.

  • RUBYOPT - Alla kommandoradsväxlar här läggs till till alla switchar som anges på kommandoraden.
  • RUBYPATH - När den används med -S-omkopplaren på kommandoraden kommer banorna i RUBYPATH att läggas till sökvägarna när du letar efter Ruby-skript. Vägarna i RUBYPATH föregår de sökvägar som anges i PATH.
  • RUBYLIB - Listan över sökvägar här läggs till i listan över banor som Ruby använder för att söka efter bibliotek som ingår i programmet med kräver metod. Sökvägarna i RUBYLIB kommer att sökas före andra kataloger.
instagram story viewer