Premenné prostredia sú premenné odovzdávané programom príkazový riadok alebo grafický obal. Ak sa odkazuje na premennú prostredia, potom sa odkazuje na jej hodnotu (bez ohľadu na to, ako sa táto premenná definuje).
Aj keď existuje niekoľko premenných prostredia, ktoré ovplyvňujú iba príkazový riadok alebo samotný grafický shell (napríklad PATH alebo HOME), existuje aj niekoľko priamo ovplyvňujúcich, ako Ruby skripty vykonať.
Tip: Premenné prostredia Ruby sú podobné tým, ktoré sa nachádzajú v OS Windows. Napríklad používatelia Windows môžu poznať užívateľskú premennú TMP na definovanie umiestnenia dočasného priečinka pre aktuálne prihláseného používateľa.
Prístup k premenným prostredia z Ruby
Ruby má priamy prístup k premenným prostredia prostredníctvom ENV hašiš. Premenné prostredia sa dajú priamo prečítať alebo zapísať pomocou indexový operátor s argumentom reťazca.
Upozorňujeme, že zápis do premenných prostredia bude mať vplyv iba na podradené procesy skriptu Ruby. Iné vyvolania skriptu neuvidia zmeny premenných prostredia.
#! / usr / bin / env ruby
# Vytlačiť niektoré premenné
dáva ENV ['PATH']
uvádza ENV ['EDITOR']
# Zmena premennej a spustenie nového programu
ENV ['EDITOR'] = 'gedit'
`cheat environment_variables - add`
Odovzdávanie premenných prostredia do Ruby
Ak chcete premeniť prostredia na Ruby, jednoducho nastavte túto premennú prostredia v prostredí shellu. Medzi operačnými systémami sa mierne líši, ale koncepcie zostávajú rovnaké.
Ak chcete nastaviť premennú prostredia v príkazovom riadku Windows, použite príkaz set.
> set TEST = value
Ak chcete nastaviť premennú prostredia na linux alebo OS X, použite príkaz export. Hoci premenné prostredia sú normálnou súčasťou shellu Bash, iba premenné, ktoré boli vyvážajú bude k dispozícii v programoch spustených programom Bash shell.
$ export TEST = hodnota
Ak premennú prostredia použije iba program, ktorý sa má spustiť, môžete pred názvom príkazu definovať akékoľvek premenné prostredia. Premenná prostredia sa do programu prenesie ako jeho spustenie, ale neuloží sa. Žiadne ďalšie vyvolania programu nebudú mať túto premennú prostredia nastavenú.
$ EDITOR = gedit cheat environment_variables - add
Premenné prostredia, ktoré používa Ruby
Existuje množstvo premenných prostredia, ktoré ovplyvňujú to, ako tlmočník Ruby pôsobí.
- RUBYOPT - Všetky prepínače príkazového riadku sa pridajú do všetkých prepínačov uvedených na príkazovom riadku.
- RUBYPATH - Ak sa používa s prepínačom -S na príkazovom riadku, cesty uvedené v RUBYPATH sa pridajú k hľadaným cestám pri hľadaní Ruby skriptov. Cesty v RUBYPATH predchádzajú cestám uvedeným v PATH.
- RUBYLIB - Zoznam ciest tu bude pridaný do zoznamu ciest, ktoré Ruby používa na vyhľadávanie knižníc zahrnutých v programe pomocou vyžadovať metódu. Cesty v RUBYLIB sa prehľadajú pred ostatnými adresármi.