Ero sivun ”Komentorivin perusteet” versioiden välillä

Siirry navigaatioon Siirry hakuun
523 merkkiä lisätty ,  24. kesäkuuta 2007
edistynyt tab-täydennys, wikilinkkejä
p (→‎Katso myös: wikilinkki)
(edistynyt tab-täydennys, wikilinkkejä)
Rivi 22: Rivi 22:


== Komentojen suorittaminen ==
== Komentojen suorittaminen ==
Mikäli ohjelma löytyy hakemistosta, joka on määritelty $PATH-ympäristömuuttujassa, sen voi suorittaa suoraan ajamalla komennon ohjelmannimi (esimerkiksi ls on ohjelma, joka sijaitsee yleensä polussa /bin). Yleensä näin voidaan suorittaa koko järjestelmään asennetut ohjelmat. $PATH:in sisällön voi tarkistaa seuraavasti:
Mikäli ohjelma löytyy hakemistosta, joka on määritelty [[PATH|$PATH]]-[[wikipedia:fi:ympäristömuuttuja|ympäristömuuttuja]]ssa, sen voi suorittaa suoraan ajamalla komennon ohjelmannimi (esimerkiksi ls on ohjelma, joka sijaitsee yleensä polussa /bin). Yleensä näin voidaan suorittaa koko järjestelmään asennetut ohjelmat. $PATH:in sisällön voi tarkistaa seuraavasti:
  $ echo $PATH
  $ echo $PATH
  /usr/kde/3.5/bin:/usr/local/bin:/usr/bin:/bin:/opt/bin:/usr/i686-pc-linux-gnu/gcc-bin/3.4.5:/opt/sun-jdk-1.5.0.06/bin:
  /usr/kde/3.5/bin:/usr/local/bin:/usr/bin:/bin:/opt/bin:/usr/i686-pc-linux-gnu/gcc-bin/3.4.5:/opt/sun-jdk-1.5.0.06/bin:
Rivi 33: Rivi 33:
tai
tai
  $ /home/kayttaja/ohjelma
  $ /home/kayttaja/ohjelma
'''Vinkki''': Käyttäjän omaan kotihakemistoon (/home/kayttaja) voi viitata tidlellä: cd ~  
'''Vinkki''': Käyttäjän omaan kotihakemistoon (/home/kayttaja) voi viitata tildellä: cd ~  


Ohjelman voi myös jättää pyörimään taustalle laittamalla rivin perään merkin &. Tällöin ohjelman tuloste tulee konsoliin, mutta komentorivin normaali käyttö on mahdollista.
Ohjelman voi myös jättää pyörimään taustalle laittamalla rivin perään merkin &. Tällöin ohjelman tuloste tulee konsoliin, mutta komentorivin normaali käyttö on mahdollista.
Rivi 74: Rivi 74:


===Tiedostojen putkitus===
===Tiedostojen putkitus===
Ohjelmien tulosteiden lisäksi voi putkittaa myös tiedostoja. Esimerkiksi voit kokeilla luoda pienen tekstitiedoston, ja sitten ajaa komennon <tt>cowsay < tiedosto</tt>. Tällöin tiedoston sisältö annetaan ohjelmalle (tässä tapauksessa cowsaylle) syötteenä (nk. stdin). Nyt kun ohjelma lukee syötettä (joka normaalisti olisi näppäimistö), se lukeekin tiedoston sisältöä.
Ohjelmien tulosteiden lisäksi voi putkittaa myös tiedostoja. Esimerkiksi voit kokeilla luoda pienen tekstitiedoston, ja sitten ajaa komennon <tt>cowsay < tiedosto</tt>. Tällöin tiedoston sisältö annetaan ohjelmalle (tässä tapauksessa cowsaylle) syötteenä (nk. [[STDIN]]). Nyt kun ohjelma lukee syötettä (joka normaalisti olisi näppäimistö), se lukeekin tiedoston sisältöä.


Vastaavasti ohjelman tulostuksen voi ohjata tavallisen komentorivin (stdout) sijasta tiedostoon ohjausmerkillä >. Kokeile vaikka komentoa <tt>cowsay Moi > tiedosto</tt>, ja katso tämän jälkeen tiedoston ''tiedosto'' sisältö (<tt>[[cat]] tiedosto</tt>). >-merkin käyttö kirjoittaa tiedoston päälle, mutta >>-operaattoria käyttämällä putkesta tulevan tiedon voi kirjoittaa tiedoston perään.
Vastaavasti ohjelman tulostuksen voi ohjata tavallisen komentorivin ([[STDOUT]]) sijasta tiedostoon ohjausmerkillä >. Kokeile vaikka komentoa <tt>cowsay Moi > tiedosto</tt>, ja katso tämän jälkeen tiedoston ''tiedosto'' sisältö (<tt>[[cat]] tiedosto</tt>). >-merkin käyttö kirjoittaa tiedoston päälle, mutta >>-operaattoria käyttämällä putkesta tulevan tiedon voi kirjoittaa tiedoston perään.


Putkituksen käyttöä kannattaa opetella systemaattisesti, sillä suurin osa komentoriviohjelmista toimii tehokkaasti osana jotain toista ohjelmaa, ja kytkentä niiden välillä tehdään helpoiten putkituksen avulla. Pitkiäkään putkituksia ei kannata pelätä. Putkituksen opettelua voi aloittaa tutkimalla komentoja [[grep]], [[awk]], [[cat]], [[zcat]], [[less]], [[more]], [[sort]], [[od]], [[du]], [[wc]] ja [[ls]] (katso myös luettelo [[komentorivikomennot|komentorivikomennoista]]).
Putkituksen käyttöä kannattaa opetella systemaattisesti, sillä suurin osa komentoriviohjelmista toimii tehokkaasti osana jotain toista ohjelmaa, ja kytkentä niiden välillä tehdään helpoiten putkituksen avulla. Pitkiäkään putkituksia ei kannata pelätä. Putkituksen opettelua voi aloittaa tutkimalla komentoja [[grep]], [[awk]], [[cat]], [[zcat]], [[less]], [[more]], [[sort]], [[od]], [[du]], [[wc]] ja [[ls]] (katso myös luettelo [[komentorivikomennot|komentorivikomennoista]]).
Rivi 89: Rivi 89:
  2569    /etc/X11
  2569    /etc/X11


Tässä tutkitaan [[du]]-komennon avulla sitä, kuinka paljon mikäkin /etc:n hakemisto vie tilaa. Ongelmana tässä on kuitenkin se, että hakemistot ovat oletuksena haku- eikä kokojärjestyksessä. Tämä ratkaistaan komennolla sort -nr, joka lajittelee sille annetun syötteen, eli tässä tapauksessa du:n tulosteen, numeerisesti (valitsin -n) isoimmasta pienimpään (valitsin -r kääntää tulostusjärjestyksen, joka oletuksena olisi pienimmästä isoimpaan). Lopuksi käytetään komentoa ''head -5'' näyttämään sortin tulostuksesta vain viisi ensimmäistä riviä.  
Tässä tutkitaan [[du]]-komennon avulla sitä, kuinka paljon mikäkin /etc:n hakemisto vie tilaa. Ongelmana tässä on kuitenkin se, että hakemistot ovat oletuksena haku- eikä kokojärjestyksessä. Tämä ratkaistaan komennolla [[sort]] -nr, joka lajittelee sille annetun syötteen, eli tässä tapauksessa du:n tulosteen, numeerisesti (valitsin -n) isoimmasta pienimpään (valitsin -r kääntää tulostusjärjestyksen, joka oletuksena olisi pienimmästä isoimpaan). Lopuksi käytetään komentoa ''[[head]] -5'' näyttämään sortin tulostuksesta vain viisi ensimmäistä riviä.  


Toiminnallisesti sama tulos tulee myös komennolla
Toiminnallisesti sama tulos tulee myös komennolla
Rivi 129: Rivi 129:


Komentoja voidaan yhdistellä myös puolipisteellä (;), jolloin minkäänlaista tarkistusta komennon onnistumisesta ei suoriteta. Esimerkiksi seuraavien komentojen tulosteet ovat identtiset
Komentoja voidaan yhdistellä myös puolipisteellä (;), jolloin minkäänlaista tarkistusta komennon onnistumisesta ei suoriteta. Esimerkiksi seuraavien komentojen tulosteet ovat identtiset
  $ false ; cowthink Moi!
  $ [[false]] ; cowthink Moi!
  $ true ; cowthink Moi!
  $ [[true]] ; cowthink Moi!


== Täydentäminen tabulaattorilla ==
== Täydentäminen tabulaattorilla ==
Tabulaattorin painelu on keino täydentää hakemistojen ja tiedostojen nimiä komentoriville kirjoittamalla vain nimen alku ja painamalla sitten tabulaattoria.
Tabulaattorin painelu on keino täydentää, komentojen, hakemistojen ja tiedostojen nimiä komentoriville kirjoittamalla vain nimen alku ja painamalla sitten tabulaattoria.


Esimerkiksi mikäli hakemistossa olisi seuraavat alihakemistot:
Esimerkiksi mikäli hakemistossa olisi seuraavat alihakemistot:
Rivi 146: Rivi 146:
  $ cd p
  $ cd p
ja painamalla tabulaattoria mitään ei tapahdu, koska ei ole selvää, minkä hakemiston haluat valita. Kun tabulaattoria painetaan toisen kerran, tulee näkyviin listaus kaikista vaihtoehdoista, tässä tapauksessa siis hakemistojen "pelit" ja "pikkupelit" nimet.
ja painamalla tabulaattoria mitään ei tapahdu, koska ei ole selvää, minkä hakemiston haluat valita. Kun tabulaattoria painetaan toisen kerran, tulee näkyviin listaus kaikista vaihtoehdoista, tässä tapauksessa siis hakemistojen "pelit" ja "pikkupelit" nimet.
Eräät komentotulkit tukevat myös esimerkiksi etäkoneiden nimien, käyttäjänimien, [[PID|prosessinumeroiden]] sekä komentojen valitsimien täydennystä tabin avulla. Mm. [[zsh]]-[[komentotulkki|komentotulkissa]] on mahdollista myös nk. oikoluku, eli väärin kirjoitettujen komentojen tab-täydennys oikeiksi. Esimerkiksi komento mpllayr voitaisiin tällöin täydentää komennoksi [[mplayer]].


==Komentojen käynnistäminen taustalle==
==Komentojen käynnistäminen taustalle==
Rivi 161: Rivi 163:
*[[:Luokka:Komentorivin perustyökalut|Komentorivin perustyökalut]]
*[[:Luokka:Komentorivin perustyökalut|Komentorivin perustyökalut]]
*[[Bash-skriptaus]]
*[[Bash-skriptaus]]
*[http://people.debian.org/~debacle/refcard/refcard-fi-a4.pdf Debian GNU/Linux Pikaohje PDF-tiedostona ] (Tulosta parerille kaksipuoleisena ja taita haitariksi, fantsua)
*[[Standardivirrat]]
 
==Linkkejä==
*[http://people.debian.org/~debacle/refcard/refcard-fi-a4.pdf Debian GNU/Linux Pikaohje PDF-tiedostona] (Tulosta parerille kaksipuoleisena ja taita haitariksi, fantsua)
*[http://www.linuxcommand.org/ LinuxCommand.org] – Aloittelijoille suunnattu kattava ja helppotajuinen englanninkielinen opetussivusto komentorivin käytöstä ja shell-skriptien kirjoituksesta.
*[http://www.linuxcommand.org/ LinuxCommand.org] – Aloittelijoille suunnattu kattava ja helppotajuinen englanninkielinen opetussivusto komentorivin käytöstä ja shell-skriptien kirjoituksesta.


[[Luokka:Ohjeet]]
[[Luokka:Ohjeet]]
[[Luokka:Komentorivi]]
[[Luokka:Komentorivi]]
4 316

muokkausta

Navigointivalikko