- CS-A0100
- 3. Hakemistot ja tiedostot
- 3.1 Hakemistot ja tiedostot — johdanto
Hakemistot ja tiedostot — johdanto¶
Kaikki tietokoneeseen pysyvästi tallennettu tieto säilytetään tiedostoissa (file), jotka on järjestetty hakemistoihin (directory). Tiedostoja ovat esimerkiksi:
tietokoneen käyttöjärjestelmän mukana tulevat ohjelmat ja niiden käyttöohjeet
tietokoneelle tallennetut tekstidokumentit, valokuvat, videot ja musiikkikappaleet
sinun kirjoittamasi tietokoneohjelman lähdekoodi
tästä lähdekoodista kääntämällä syntyvä ajettava ohjelma.
Hakemistot voivat sisältää sekä tiedostoja että hakemistoja. Hakemistoja kutsutaan (erityisesti Linux-maailman ulkopuolella) myös "kansioiksi".
Polut¶
Tiedoston täsmällinen sijainti voidaan ilmoittaa tiedostopolkuna. Esimerkiksi aiemmista osista tutun uname
-ohjelman täsmällinen polku on yleensä
/usr/bin/uname
Linuxissa on yksi juurihakemisto, johon viitataan merkillä /
. Täydellinen tiedostopolku alkaa aina /
-merkillä, ja siinä luetellaan juurihakemistosta alkaen, mistä hakemistosta tiedosto löytyy. Tässä tapauksessa tiedosto siis sijaitsee juurihakemiston alihakemistossa usr
, ja edelleen sen alihakemistossa bin
, tiedostossa nimeltä uname
.
Työhakemisto ja suhteelliset polut¶
Koska tiedostoihin on tylsä viitata aina täydellisillä poluilla, tarjolla on näppärä oikotie: jokaisella prosessilla on myös työhakemisto, ja jos viittaat tiedostoon nimellä, joka ei ala /
-merkillä, se tulkitaan suhteelliseksi tiedostopoluksi, joka kertoo, miten tiedostoon päästään käsiksi tästä hakemistosta alkaen. Voit käyttää ..
-merkintää palaamaan hakemistohierarkiassa tasoa ylemmäksi. Muutama esimerkki havainnollistaa tätä:
Työhakemisto
Suhteellinen tiedostopolku
Täydellinen tiedostopolku
/usr/bin
uname
/usr/bin/uname
/usr
bin/uname
/usr/bin/uname
/
usr/bin/uname
/usr/bin/uname
/usr/sbin
../bin/uname
/usr/bin/uname
/home/x/y
../../../usr/bin/uname
/usr/bin/uname
Komentotulkissa voit katsoa tämänhetkisen työhakemiston komennolla pwd
(print working directory) ja voit vaihtaa hakemistoa komennolla cd
(change directory). Palaamme näihin aivan pian!
Kotihakemisto¶
Edessäsi olevassa Linux-tietokoneessa on jo valmiiksi valtava määrä tiedostoja, jotka tulivat käyttöjärjestelmän mukana (kuten tuo edellä mainittu /usr/bin/uname
). Näihin tiedostoihin ei ole yleensä tarkoitus puuttua muuta kuin käyttöjärjestelmän tarjoamilla työkaluilla (ja esimerkiksi Aallon Linux-koneiden kohdalla näihin tiedostoihin ei tietysti edes voi koskea muut kuin Aallon IT-väki, onneksi).
Sen sijaan jokaisessa Linux-koneessa on jokaiselle koneen käyttäjälle olemassa oma henkilökohtainen kotihakemisto, joka on tarkoitettu sinun omille tiedostoillesi. Voit hyvin vapaasti luoda omaan kotihakemistoosi haluamiasi alihakemistoja ja pitää siellä juuri niitä tiedostoja, mitä itse haluat.
Kun avaat uuden terminaalin, komentotulkin työhakemisto on yleensä automaattisesti kotihakemistossasi.
Kokeile!
Anna komento pwd
ja katso, mitä se tulostaa.
Omalla koneellasi tuloste luultavasti on jotain sellaista kuin /home/TUNNUS
, Aallon koneilla taas mahdollisesti esimerkiksi /u/01/TUNNUS/unix
.
Kotihakemisto löytyy myös HOME
-ympäristömuuttujasta.
Kokeile!
Katso, mitä nämä komennot tulostavat:
echo $HOME
echo $HOME/test
Kotihakemistoon voi viitata komentotulkissa myös poluilla, jotka alkavat ~
-merkillä.
Kokeile!
Katso, mitä nämä komennot tulostavat:
echo ~
echo ~/test
echo ~test
Jos et jo ole kotihakemistossasi, voit helposti siirtyä sinne yksinkertaisesti komennolla cd
ilman parametreja. Kaikki nämä tekevät saman asian:
cd
cd ~
cd $HOME
Jatketaanpa…