Ero sivun ”Komentorivin perusteet” versioiden välillä

Siirry navigaatioon Siirry hakuun
2 050 merkkiä lisätty ,  21. lokakuuta 2007
lainausmerkkien käyttö + lisää dollarimerkkejä + linkki erikoisohjelmat-luokkaan
p (Käyttäjän 81.209.107.105 (keskustelu) muokkaukset kumottiin ja sivu palautettiin viimeisimpään käyttäjän Teksturi tekemään versioon.)
(lainausmerkkien käyttö + lisää dollarimerkkejä + linkki erikoisohjelmat-luokkaan)
Rivi 165: Rivi 165:
  $ fg %2
  $ fg %2
Tietyn ohjelman suorituksen voi myös siirtää taustalle [[bg]]-komennolla. Tällöin ohjelman suoritus on kuitenkin yleensä ensin keskeytettävä Ctrl + Z -näppäinyhdistelmällä, jotta komennon antaminen olisi mahdollista. Bg:n syntaksi on sama kuin fg:n.
Tietyn ohjelman suorituksen voi myös siirtää taustalle [[bg]]-komennolla. Tällöin ohjelman suoritus on kuitenkin yleensä ensin keskeytettävä Ctrl + Z -näppäinyhdistelmällä, jotta komennon antaminen olisi mahdollista. Bg:n syntaksi on sama kuin fg:n.
==Lainausmerkkien käyttö==
Lainausmerkkejä käytetään kertomaan, että niiden välissä oleva merkkijono pitää välittää kokonaisuudessaan eteenpäin tulkitsematta sen merkkejä erikseen. Lainausmerkkejä on käytössä kolmenlaisia, joista jokaisella on oma merkityksensä.
Yksinkertaiset lainausmerkit ('), jotka suomalais-ruotsalaisessa näppäimistössä saa Ä:n ja enterin välisestä napista, saavat komentotulkin välittämään niiden välisen merkkijonon sinällään kutsutulle komennolle, prosessoimatta sitä millään tavalla. Esimerkiksi komento
$ [[su]] -c '[[chown]] ida /home/ida -R'
joka suorittaa lainausmerkkien välissä olevan komennon [[pääkäyttäjä]]n oikeuksilla, johtaisi ilman lainausmerkkejä siihen, että <tt>su</tt> tulkitsisi vain merkkijonon "<tt>chmod</tt>" <tt>-c</tt>-valitsimensa argumentiksi eli suoritettavaksi komennoksi. Loput kolme merkkijonoa tulkittaisiin <tt>su</tt>:n omiksi argumenteiksi, mikä johtaisi virheilmoitukseen.
2-napista shiftin avulla saatavat tuplalainausmerkit (") poikkeavat yksinkertaisista lainausmerkeistä siinä, että komentotulkki laajentaa niiden sisältämät [[ympäristömuuttuja]]t ennen merkkijonon syöttämistä komennolle. Esimerkiksi komento
$ echo "$EDITOR on paras"
tulostaisi (esimerkiksi)
[[emacs]] on paras
kun taas komento
$ echo '$EDITOR on paras'
tulostaa
$EDITOR on paras
Yleensä ei ole merkitystä, kummanlaisia lainausmerkkejä käyttää, mutta niiden ero on kuitenkin hyvä tiedostaa.
Kolmas lainausmerkkityyppi ovat vasemmalle kallellaan olevat yksinkertaiset lainausmerkit, jotka saa shiftin kanssa +-näppäimen oikealla puolella olevasta napista. Ne aiheuttavat lainausmerkkien sisällä olevan komennon/merkkijonon suorittamisen ennen sen välittämistä eteenpäin. Esimerkiksi komento
$ [[echo]] `[[uname]]` >appelsiini
loisi uuden tiedoston nimeltä appelsiini, jonka sisällöksi tulisi komennon <tt>uname</tt> tuloste eli "<tt>Linux</tt>".


==Komentohistoria==
==Komentohistoria==
Rivi 175: Rivi 196:


Komentohistoria (nykyinen historia + komentohistoriatiedosto) on mahdollista tulostaa ruudulle komennolla <tt>history</tt>. Tietyn komentohistorian rivin voi suorittaa uudelleen komennolla !<rivinumero>, esimerkiksi
Komentohistoria (nykyinen historia + komentohistoriatiedosto) on mahdollista tulostaa ruudulle komennolla <tt>history</tt>. Tietyn komentohistorian rivin voi suorittaa uudelleen komennolla !<rivinumero>, esimerkiksi
  !15256
  $ !15256
suorittaisi rivin numero 15256.
suorittaisi rivin numero 15256.


Rivi 205: Rivi 226:
*$VISUAL - oletus[[tekstieditori]]
*$VISUAL - oletus[[tekstieditori]]
Kaikki asetetut ympäristömuuttujat voi tulostaa komennolla <tt>[[env]]</tt>. Ympäristömuuttujien arvoja voi [[sh]]-sukuisissa komentotulkeissa (mm. [[Bash]] ja [[Zsh]]) asettaa komennolla <tt>[[export]]</tt> ja [[Csh]]-sukuisissa (mm. [[Tcsh]]) komennolla <tt>[[setenv]]</tt>. Esimerkki:
Kaikki asetetut ympäristömuuttujat voi tulostaa komennolla <tt>[[env]]</tt>. Ympäristömuuttujien arvoja voi [[sh]]-sukuisissa komentotulkeissa (mm. [[Bash]] ja [[Zsh]]) asettaa komennolla <tt>[[export]]</tt> ja [[Csh]]-sukuisissa (mm. [[Tcsh]]) komennolla <tt>[[setenv]]</tt>. Esimerkki:
  export EDITOR="[[emacs]]"
  $ export EDITOR="[[emacs]]"


Komentotulkkiympäristössä on mahdollista käyttää myös ns. tavallisia muuttujia, jotka toimivat vain yhden prosessin sisällä. Toisin kuin ympäristömuuttujat, tavallinen muuttuja ei siis komentorivillä määriteltynä periydy siltä käynnistetyille prosesseille eikä myöskään näy env-komennon tulosteessa.
Komentotulkkiympäristössä on mahdollista käyttää myös ns. tavallisia muuttujia, jotka toimivat vain yhden prosessin sisällä. Toisin kuin ympäristömuuttujat, tavallinen muuttuja ei siis komentorivillä määriteltynä periydy siltä käynnistetyille prosesseille eikä myöskään näy env-komennon tulosteessa.


Tavallinen muuttuja määritellään komennolla <tt>MUUTTUJANNIMI=arvo</tt>, esimerkiksi
Tavallinen muuttuja määritellään komennolla <tt>MUUTTUJANNIMI=arvo</tt>, esimerkiksi
  FOO=bar
  $ FOO=bar


==Ajonaikainen ohjeistus==
==Ajonaikainen ohjeistus==
Usein on ongelmana, ettei tiedä miten jotakin tiettyä komentoa käytetään tai mikä on jonkin komennon tehtävä. Tätä ongelmaa ratkaisemaan on tarjolla monenlaista ohjeistusta. Ensinnäkin ohjelmat itse sisältävät yleensä lyhyen käyttöohjeen, jonka saa näkyviin valitsimella -h, --help tai joskus myös -help. Esimerkiksi [[cat]]-komennon ohje aukeaa komennolla
Usein on ongelmana, ettei tiedä miten jotakin tiettyä komentoa käytetään tai mikä on jonkin komennon tehtävä. Tätä ongelmaa ratkaisemaan on tarjolla monenlaista ohjeistusta. Ensinnäkin ohjelmat itse sisältävät yleensä lyhyen käyttöohjeen, jonka saa näkyviin valitsimella -h, --help tai joskus myös -help. Esimerkiksi [[cat]]-komennon ohje aukeaa komennolla
  cat --help
  $ cat --help
Laajempiin ohjesivuihin pääsee käsiksi komennolla [[man]], esimerkiksi
Laajempiin ohjesivuihin pääsee käsiksi komennolla [[man]], esimerkiksi
  man [[sudo]]
  $ man [[sudo]]
Man-sivuilla on aina selitetty vähintään ohjelman käyttötarkoitus ja selostettu eri valitsinten käyttö. Osa man-sivuista tarjoaa hyvinkin laajaa opastusta. Komentojen opiskelua man-sivujen avulla haittaa toisaalta se, että useimmilla man-sivuilla ei ole esimerkkejä ohjelman käytöstä. Varsinaisia ohjelmia käsittelevien man-sivujen lisäksi on olemassa myös mm. [[asetustiedosto]]ja ja eri ohjelmointikielten funktioita käsitteleviä man-sivuja.
Man-sivuilla on aina selitetty vähintään ohjelman käyttötarkoitus ja selostettu eri valitsinten käyttö. Osa man-sivuista tarjoaa hyvinkin laajaa opastusta. Komentojen opiskelua man-sivujen avulla haittaa toisaalta se, että useimmilla man-sivuilla ei ole esimerkkejä ohjelman käytöstä. Varsinaisia ohjelmia käsittelevien man-sivujen lisäksi on olemassa myös mm. [[asetustiedosto]]ja ja eri ohjelmointikielten funktioita käsitteleviä man-sivuja.


Rivi 244: Rivi 265:
*[[Komentorivivinkkejä]]
*[[Komentorivivinkkejä]]
*[[:Luokka:Komentorivin perustyökalut|Komentorivin perustyökalut]]
*[[:Luokka:Komentorivin perustyökalut|Komentorivin perustyökalut]]
*[[:Luokka:Komentorivin erikoisohjelmat|Komentorivin erikoisohjelmat]]
*[[Bash-skriptaus]]
*[[Bash-skriptaus]]
*[[Bashin ulkoasu]]
*[[Bashin ulkoasu]]
4 316

muokkausta

Navigointivalikko