1. Failide käsitlemise vahendid

Antud kontekstis mõistame failide käsitlemise all failide kopeerimist, liigutamist ja kustutamist. Hiljem vaatame ka seda, kuidas muuta failide atribuute (omanik, õigused).

1.1. mkdir, touch: tühjade kataloogide ja failide loomine

Käsuga mkdir (MaKe DIRectory) saab luua katalooge. Selle süntaks on lihtne:

mkdir [võtmed] <kataloog> [kataloog ...]

Käsu võtmetest väärib märkimist ennekõike -p. See on mõeldud kaheks asjaks:

  1. see loob ülemkataloogid, kui neid ei peaks eksisteerima. Ilma selle võtmeta käsk mkdir lihtsalt ebaõnnestub ja teatab, et vajalikku ülemkataloogi ei ole olemas;

  2. see lõpetab oma töö vaikides, kui kataloog, mida soovisite luua, on juba olemas. Kui aga jätate võtme -p andmata, tagastab mkdir veateate, mille sisuks on teadaanne kataloogi olemasolu kohta.

Toome mõned näited:

  • mkdir foo: loob kataloogi foo selles kataloogis, kus Te parajasti viibite;

  • mkdir -p pildid/muud dokud: loob kataloogis pildid kataloogi muud. Kõigepealt luuakse esimesena mainitud kataloog, kui seda veel ei ole (-p); samuti luuakse kataloog dokud selles kataloogis, kus Te parajasti viibite.

Algselt ei olnud käsk touch mõeldud üldse mitte failide loomiseks, vaid failide kasutamise ja muutmise aja uuendamiseks[12]. Kuid käsk touch loob ka tühjad failid, kui antud faile ei ole eelnevalt olemas. Käsu süntaks on järgmine:

touch [võtmed] fail [fail...]

Nii loob käsk:

touch fail1 pildid/fail2

tühja faili nimega fail1 kataloogis, kus parajasti asute, ja tühja faili nimega fail2 kataloogis pildid, kui neid faile veel ei olnud olemas.

1.2. rm: failide või kataloogide kustutamine

Käsk rm (ReMove) asendab DOS-i käske del ja deltree ning võimaldab kasutada rohkem võtmeid. Käsu süntaks on järgmine:

rm [võtmed] <fail|kataloog> [fail|kataloog...]

Tähtsamad võtmed on järgmised:

  • -r või -R: kustutab rekursiivselt. See võti on kohustuslik kataloogi kustutamise korral sõltumata sellest, kas kataloog on tühi või mitte. Tühja kataloogi kustutamiseks võib küll kasutada ka käsku rmdir.

  • -i: kinnituse nõudmine enne iga kustutamisoperatsiooni. Pange tähele, et vaikimisi on Mandriva Linuxis käsk rm õieti alias ja tegelik käsk ongi turvakaalutlustel rm -i (samasugused aliased on käskudele cp ja mv). Võib muidugi juhtuda, et Te ei pea selliseid aliaseid mõttekaks. Kui soovite need eemaldada, looge tühi fail ~/.alias, mis takistab süsteemsete aliaste kasutamist. Teine võimalus on redigteerida faili ~/.bashrc ja tühistada seal mõningad süsteemsed aliased järgmist rida lisades: unalias rm cp mv

  • -f: vastupidiselt võtmele -i sunnib faile või katalooge kustutama ka siis, kui kasutajal ei ole nendele failidele kirjutamisõigust[13].

Mõned näited:

  • rm -i pildid/*.jpg fail1: kustutab kõik failid, mille nime lõpus seisab .jpg, kataloogist pildid, ning faili file1 kataloogist, kus Te parajasti viibite, nõudes iga kustutamise eel kinnitust. Kusutamise lubamiseks vajutage klahvile y, sellest loobumiseks klahvile n.

  • rm -Rf pildid/muud/ fail*: kustutab kinnitust nõudmata kogu kataloogi muud/ kataloogis pildid/ ning kõik failid kataloogis, kus Te parajasti asute, mille nime alguses seisab fail.

[Hoiatus]Hoiatus

Käsuga rm hävitatakse failid jäädavalt. Neid ei ole enam võimalik taastada! (Õigupoolest küll on, aga see ei ole sugugi lihtne ega kiiresti teostatav ülesanne.) Väga soovitatav oleks kasutada võtit -i, mis aitab tagada, et Te ei kustuta midagi lihtsalt kogemata.

1.3. mv: failide liigutamine või ümbernimetamine

Käsu mv (MoVe) süntaks on järgmine:

mv [võtmed] <fail|kataloog> [fail|kataloog ...] <sihtkoht>

Arvestage, et mitme faili liigutamisel peab sihtkoht olema kataloog. Faili ümbernimetamiseks piisab aga sihtkohana uue failinime andmisest.

Mõned võtmed:

  • -f: sunnib operatsiooni peale. Hoiatust ei anta, kui see nõuab näiteks olemasoleva faili ülekirjutamist.

  • -i: vastupidine võti, mis soovib saada kasutaja kinnitust enne olemasoleva faili ülekirjutamist.

  • -v: niinimetatud jutukas (verbose) režiim, mis annab teada kõigist muudatustest ja toimingutest.

Mõned näited:

  • mv -i /tmp/pics/*.png .: liigutab kõik failid kataloogis /tmp/pics/, mille nime lõpus seisab .png, kataloogi, kus Te parajasti viibite (.), kuid nõuab kinnitust enne samanimeliste failide ülekirjutamist.

  • mv foo bar: annab failile foo nimeks bar. Kui kataloog bar on juba olemas, tähendab see käsk faili foo või kogu kataloogi (kataloogi ning rekursiivselt kõigi selles leiduvate failide ja kataloogide) liigutamist kataloogi bar.

  • mv -vf fail* pildid/ prügikast/: liigutab kinnitust nõudmata kõik aktiivse kataloogi failid, mille nime alguses seisab fail, ning kogu kataloogi pildid/ kataloogi prügikast/ ja näitab iga sooritatud operatsiooni.

1.4. cp: failide ja kataloogide kopeerimine

Käsuga cp (CoPy) saab kopeerida katalooge. See sarnaneb DOS-i käskudega copy ja xcopy, kuid on võimekam. Selle süntaks on järgmine:

cp [võtmed] <fail|kataloog> [fail|kataloog ...] <sihtkoht>

Toome mõned levinumad käsu cp võtmed:

  • -R: rekursiivne kopeerimine; kohustuslik kataloogi kopeerimisel ka siis, kui tegemist on tühja kataloogiga.

  • -i: kinnituse nõudmine enne iga võimalikku faili ülekirjutamist.

  • -f: vastupidiselt võtmele -i asendab kõik olemasolevad failid ilma kinnitust küsimata.

  • -v: jutukas režiim, mis näitab kõiki käsu cp sooritatavaid toiminguid.

Mõned näited:

  • cp -i /tpildid/* pildid/: kopeerib kõik failid kataloogist /tpildid/ kataloogi pildid/, mis asub parajasti aktiivses kataloogis. Kui peaks tekkima vajadus kirjutada olemasolev fail üle, küsitakse Teie käest kinnitust.

  • cp -vR dokud/ /shared/mp3s/* minukraam/: kopeerib kogu kataloogi dokud ning kõik failid kataloogis /shared/mp3s kataloogi minukraam.

  • cp foo bar: loob failist foo koopia nimega bar aktiivses kataloogis.



[12] UNIX® korral on igal failil kolm erinevat ajatemplit: faili viimase kasutamise kuupäev (atime), s.t. aeg, mil fail viimati avati lugemiseks või kirjutamiseks; viimane kuupäev, mil muudeti inode atribuute (ctime); ning viimane kuupäev, mil muudeti faili sisu (mtime).

[13] Piisab, kui kasutajal on kirjutamisõigus kataloogis. Sellisel juhul võib ta kustutada selles leiduvaid faile ka juhul, kui ta ei ole nende failide omanik.