#
Ohj2 kurssin suorituksesta puuttuu vielä:

Please to interact with this component.

{}

Ympäristömuuttujat

  • Ympäristömuuttujat Wikipediassa
  • Käyttöjärjestelmissä on tukku asetuksia, joiden tarkoitus on olla yhteisiä kaikille ohjelmille (vrt. jonkin ohjelman options-valinnat). Esim. kaikille ohjelmille on yhteinen Temp-kansio, jonne ohjelmat voivat tallentaa väliaikaisesti tiedostoja. Temp-kansion sijainti määritetään ympäristömuuttujalla.
  • Windows-käyttöjärjestelmässä ympäristömuuttujien arvoja voi muuttaa joko komentoriviltä tai graafisen käyttöliittymän avulla. Lue ohje Kuinka muutat Windowsin Temp-kansion sijaintia
  • Ympäristömuuttujat periytyvät siten. että kun käynnistetään uusi ohjelma (tai shell, komentorivi), niin se saa käynnistävän ohjelman ympäristömuuttujat. Jos käynnistynyt ohjelman muuttaa ympäristömuuttujia, niin muutos vaikuttaa vain siihen ohjelmaan (prosessiin, ympäristöön) jossa muutos tehtiin ja sen alta käynnistettyihin ohjelmiin (prosesseihin).
  • “Ylimpien” ympäristömuuttujien muuttamisen jälkeen pitää yleensä käynnistää uudelleen ne ohjelmat joihin muutosten halutaan vaikuttavan
  • Yksi tärkeimmistä ympäristömuuttujista on PATH, jossa on lueteltu ne kansiot, joista ohjelmia etsitään silloin, kun ohjelman nimi annetaan komentoriviltä.

1. Käyttö Windowsissa

1.1 Ympäristömuuttujien arvojen katsominen

  • anna komentoriviltä set niin näet kaikkien muuttujien arvot
  • tietyn muuttujan arvon katsominen echo %MUUTTUJA% tai jos halutaan löytää joku muuttuja, mutta nimeä ei muisteta tarkkaan set | grep OSA_MUUTTUJAN_NIMESTA
  • esimerkiksi e:\mytemp>echo %USERNAME% vesal e:\mytemp>set | grep USER STDIN ALLUSERSPROFILE=C:\ProgramData USERDOMAIN=VESAH3 USERDOMAIN_ROAMINGPROFILE=VESAH3 USERNAME=vesal USERPROFILE=C:\Users\Vesa
  • poikkeuksena PATH muuttujan arvon näkee myös kirjoittamalla komentoriviltä

    path
#

1.2 Ympäristömuuttujan asettaminen

  • tilapäisesti voit jonkun muuttujan arvon asettaa komentoriviltä (vaikuttaa siihen komentoikkunaan jossa komento annetaan ja niihin ohjelmiin jotka tästä ikkunasta käynnistetään): set MUUTTUJA=ARVO
  • esimerkiksi lisätään polkuun uusi hakemisto: set PATH=%PATH%;n:\bin
  • Windowsissa on kahden tasoisia ympäristömuuttujia
    • käyttäjäkohtaisia (User variables)
    • järjestelmän muuttujia (System variables)
  • aluksi pitää saada auki Control Panel (Ohjauspaneeli). Tähän on kaksi mahdollisuutta
    • Start/Control Panel
    • kirjoitetaan komentoriviltä control
  • Control Panelista valitaan

    • System (Järjestelmä)
    • Advanced system settings (Järjestelmän lisäasetukset)
    • Advanced (Lisäasetukset)
    • Environment variables (Ympäristömuuttujat)
  • nyt pitäisi näkyä 2 eri joukkoa ympäristömuuttujia. Näistä muutetaan sitä, miten laajalti muutoksen halutaan näkyvän (ja mihin oikeudet riittävät :-)

  • jos muuttujaa ei vielä ole, voidaan luoda uusi

  • sitten muutetaan muuttujan arvoa (ja tarvittaessa annetaan sille nimi)

  • jos muuttuja on sellainen, että siihen liittyy useita arvoja (kuten esim PATH), niin silloin Windowsissa alkiot on eroteltu toistaan puolipistella (;) ja kun muokkaat arvoa, ole tarkkana että lisäät olemassa olevien loppuun ensin puolipisteen ja jatkat sen perään oman arvosi.

  • muista korjausten lopuksi painaa OK

  • muista että muutokset vaikuttavat vasta kun seuraavan kerran käynnistät uuden komentoikkunan

  • käyttöjärjestelmän versiosta riippuen voi olla myös komento setx jolla voi asettaa ympärisömuuttujia. Tällä asetettu muutos ei vaikuta nykyiseen ikkunaan, jolloin tätä useimmiten käytetään tyyliin

     set nimi=Vesa
     setx nimi %nimi%
  • Oletuksena setx asettaa käyttäjien muuttujia, jos haluat asettaa järjestelmätason muuttujia, katso ohjeita setx /?

2. Käyttö Linuxissa (myös Mac)

2.1 Ympäristömuuttujien arvojen katsominen

  • Listaa kaikki lokaalit muuttujat arvoineen

     set
  • Listaa kaikki muille prosesseille perittävät muuttujat arvoineen

     env
  • Listaa muuttujan MUUTTUJA arvon

     echo $MUUTTUJA
  • jos halutaan löytää joku muuttuja, mutta nimeä ei muisteta tarkkaan

     set | grep OSA_MUUTTUJAN_NIMESTA
  • esimerkiksi

     [vesal@i ~]$ echo $USER
     vesal
     [vesal@i ~]$ set | grep HIST
     HISTCONTROL=ignoredups
     HISTFILE=/home/vesal/.bash_history
     HISTFILESIZE=1000
     HISTSIZE=1000

1.2 Ympäristömuuttujan asettaminen BASH-shellissä

Seuraava ohje pätee jos komentotulkkina on käytössä BASH tai vastaava. Voit tarkistaa asian ympäristömuuttujan SHELL-arvosta. - tilapäisesti muuttuja voidaan asettaa

export MUUTTUJA=ARVO
  • pysyvästi asettaminen voidaan tehdä editoimalla (tai luomalla jos ei ole) .bash_profile -tiedostoa, esim:

     nano ~/.bash_profile 
  • tiedostoon laitetaan tarvittava määrä noita export-komentoja

  • huomaa, että Linuxissa listojen erottimena on kaksoispiste (:)

  • jos haluat esimerkiksi polkuun (PATH) lisätä jotakin, laita:

     export PATH=$PATH:~/bin

3. Ympäristömuuttujien käyttäminen eri kielistä

  • perl:

     my $SVN_EDITOR = $ENV{SVN_EDITOR};

These are the current permissions for this document; please modify if needed. You can always modify these permissions from the manage page.