Mustand: sisu ei ole veel tehniliselt ega keeleliselt täielikult kontrollitud ega toimetatud.

Peatüki vaade

Linux/Unix/macOS käsurea kiirõpik

Praegu loed peatükki Õpitee ja õppetunnid, mis kuulub osasse Osa I: Esimesed sammud.

Õpitee ja õppetunnid

See peatükk aitab valida, mis järjekorras lugeda. Raamatut saab kasutada ka käsiraamatuna, kuid alguses on lihtsam liikuda kindla õpitee järgi.

Kui tahad liikuda võimalikult rahulikult lihtsamast keerulisemani, alusta peatükist Terminali esimesed sammud. Peatükk Esimene tervikharjutus: 30 minutit on mõeldud hiljem, kui baas on juba all.

Kuidas seda peatükki kasutada

Kui oled täiesti alguses, ära loe raamatut järjest algusest lõpuni nagu romaani. Vaata seda pigem osade kaupa:

  1. kõigepealt õpi, kuidas käsurida lugeda ja kasutada
  2. siis ehita juurde süsteemipilt: failisüsteem, õigused, kettaruum, paketid
  3. seejärel mine failide, võrgu ja süsteemitöö juurde
  4. alles pärast seda võta suuremad töövood nagu Git, Docker ja arenduskeskkonnad

See järjekord on oluline, sest hilisemad teemad ehituvad varasematele. Näiteks:

  • ssh kasutab sama käsurea loogikat, mida õpid varem
  • git käsud kasutavad samu valikute ja argumentide mustreid
  • rsync, grep, find ja torud muutuvad arusaadavaks alles siis, kui failide ja voogude põhimõte on selge
  • veaotsing muutub palju lihtsamaks, kui tead juba, kus failid süsteemis elavad

Kiirtee: algajast töövõimeliseks kasutajaks

Staatus: soovitatav, kui tahad kiiresti saada praktiliselt kasutatavaks käsurea kasutajaks.

See ei ole kõige rahulikum rada, aga viib kiiresti seisuni “ma saan päris asju tehtud”.

Vaata peatükke selles järjekorras:

  1. Terminali esimesed sammud
  2. Abi leidmine: man, --help ja info
  3. Kataloogid ja failid
  4. Sisend, väljund, torud ja suunamine
  5. Lihtne veaotsing käsureal
  6. Failide kopeerimine ja sünkroonimine
  7. Kauglogimine ja SSH
  8. Logid ja teenused
  9. Git, GitHub ja töövoog

Pärast seda kiirteed oskad juba:

  • liikuda terminalis kindlamalt ja otsida abi ilma paanikata
  • kopeerida faile, ühendada käske torudega ja lugeda lihtsamaid veateateid
  • logida serverisse, tuua või saata faile ja vaadata logidest, mis toimub
  • teha väikese muudatuse Gitis ning kontrollida enne commit'i, mis päriselt muutus

Õpitee 1: täiesti algaja

Staatus: vajalik esimeses ringis.

Vaata peatükke selles järjekorras:

  1. Kuidas seda õpikut kasutada
  2. Terminali esimesed sammud
  3. Abi leidmine: man, --help ja info
  4. Kataloogid ja failid
  5. Teksti vaatamine ja liikumine
  6. Failide muutmine: nano ja esimene kokkupuude vim-iga
  7. Käskude kuju ja argumentide loogika
  8. Sisend, väljund, torud ja suunamine
  9. Esimene tervikharjutus: 30 minutit
  10. Linux, Unix, GNU, macOS, Windows ja shellid

Pärast seda rada oskad juba:

  • terminalis liikuda
  • faile leida, vaadata ja muuta
  • abi otsida
  • aru saada, miks käsud käituvad nii nagu nad käituvad
  • ning alles siis paigutada need oskused Linuxi, macOS-i ja Windowsi laiemasse konteksti

Õpitee 2: süsteemi pildi loomine

Staatus: vajalik pärast esimest ringi.

Kui baas on all, liigu siia:

  1. Failisüsteemi kaart
  2. Kettaruum ja süsteemi maht
  3. Õigused, omanikud ja täitmisbitid
  4. Kasutajad, grupid ja sudo
  5. Muutujad, keskkond, PATH ja aliased
  6. Paketihaldus: apt, dnf, pacman, brew
  7. Lihtne veaotsing käsureal
  8. Võrgu põhitööriistad

See plokk aitab süsteemi “musta kasti” lahti võtta.

Pärast seda rada oskad:

  • paigutada tähtsamad süsteemikaustad ja tööriistad õigesse konteksti
  • lugeda õigusi, kasutajaid ja PATH-i ilma liigse müstikata
  • aru saada, kust tulevad paketid, käsud ja paljud tüüpilised vead

Õpitee 3: igapäevane Linuxi ja serveri kasutaja

Staatus: soovitatav, kui töötad serverite, kaugühenduste või suuremate failipuudega.

Kui tahad teha päris töid masinate, failide ja kaugühendustega, siis vaata eriti neid peatükke:

  1. Failide kopeerimine ja sünkroonimine
  2. Kauglogimine ja SSH
  3. Veebist sisu toomine ja tekstivaade: curl, wget, lynx
  4. Arhiivid ja pakkimine
  5. Tervete kataloogipuude haldus ja jagamine
  6. Protsessid, tööd ja signaalid
  7. Logid ja teenused
  8. Püsivad terminalisessioonid: tmux ja screen

See rada on seotud praktilise süsteemikasutusega:

  • failid liiguvad masinate vahel
  • protsessid võivad kinni jääda või kaua joosta
  • logidest tuleb probleeme otsida
  • katkestuste vastu on vaja püsivaid sessioone

Pärast seda rada oskad:

  • kopeerida faile ja katalooge masinate vahel
  • logida sisse SSH kaudu ja kasutada võtmeid turvalisemalt
  • lugeda logisid ning hallata pikemalt jooksvaid töid

Õpitee 4: tekst, filtrid ja automatiseerimine

Staatus: soovitatav kohe pärast baasi, kui tahad käsurea päris jõudu kasutada.

Kui tahad saada tugevaks Unix-laadsete tekstivoo tööriistade kasutajaks, siis liigu nii:

  1. Teksti otsimine: grep ja sugulased
  2. Teksti teisendamine: tr, cut, paste, column, strings
  3. Vood ja tabelid: sort, uniq, wc, pr, join
  4. sed, awk ja perl praktiliselt
  5. `find` ja `xargs` ohutumalt
  6. Esimene shelliskript
  7. `cron` ja ajastatud tööd

See on üks tähtsamaid õpiteid, sest siin tekib “väikeste tööriistade ühendamise” tunnetus.

Pärast seda rada oskad:

  • otsida ja filtreerida ridu mustri järgi
  • sortida, loendada ja teisendada tekstivooge
  • kirjutada esimesi lühikesi shelliskripte ja ajastatud töid

Õpitee 5: arendaja suund

Staatus: soovitatav, kui kasutad käsurida tarkvaraprojektides.

Kui eesmärk on tarkvara arendamine, siis pärast baasi vaata eriti neid peatükke:

  1. Git, GitHub ja töövoog
  2. Pythoni venv ja eraldatud keskkonnad
  3. Dockeri alused
  4. IDE-d ja arenduskeskkonnad
  5. Andmeteaduse eelteadmised käsurea vaates
  6. CSV, JSON ja XML käsureal
  7. Andmebaasi algus: sqlite ja Python
  8. Kompileerimine ja käivitamine: shell, Python, C, C++, Go, Rust, Java
  9. LaTeX käsurealt

See järjekord on mõistlik:

  • Git tuleb peaaegu igas projektis enne
  • venv aitab projektisõltuvused korras hoida
  • Docker ja IDE on mugavus- ning töövooteemad
  • andmeteaduse eelteadmiste osa aitab siduda käsurea, failivormingud ja SQL-i
  • SQLite, kompileerimine ja LaTeX näitavad, kuidas käsurida seob andmed, programmid ja dokumendid üheks töövooks

Pärast seda rada oskad:

  • hoida projekti muudatusi Git-is korras
  • isoleerida sõltuvusi ja arenduskeskkondi
  • lugeda, käivitada ja ehitada mitut tüüpi arendusprojekte

Õpitee 6: andmeteaduse stardirada

Staatus: soovitatav, kui tahad käsurida kasutada andmete puhastamiseks ja uurimiseks.

Kui eesmärk on andmeteaduse või andmeanalüüsi suund, siis pärast käsurea baasi vaata eriti neid peatükke:

  1. Sisend, väljund, torud ja suunamine
  2. Teksti otsimine: grep ja sugulased
  3. Teksti teisendamine: tr, cut, paste, column, strings
  4. Vood ja tabelid: sort, uniq, wc, pr, join
  5. Andmeteaduse eelteadmised käsurea vaates
  6. CSV, JSON ja XML käsureal
  7. Andmebaasi algus: sqlite ja Python
  8. Pythoni venv ja eraldatud keskkonnad

See rada on hea, sest:

  • kõigepealt õpid andmeid failidest lugema ja filtreerima
  • siis saad aru, mis vahe on tabelil, JSON-il ja XML-il
  • pärast seda muutub SQL palju loomulikumaks
  • lõpuks saad sama töövoo viia Pythoni projekti või andmetöötlusse

Pärast seda rada oskad:

  • töödelda tekstifaile ja tabeleid käsureal
  • eristada CSV-d, JSON-i ja XML-i
  • teha esimesi SQL-päringuid ning siduda see Pythoni töövooga

Minimaalne 7 päeva plaan

Kui tahad võtta ühe lühikese esimese ringi, siis üks praktiline plaan on:

  1. päev: Terminali esimesed sammud, Abi leidmine, Kataloogid ja failid
  2. päev: Teksti vaatamine ja liikumine, Failide muutmine, Käskude kuju
  3. päev: Sisend, väljund, torud ja suunamine, Esimene tervikharjutus, Linux, Unix, GNU, macOS, Windows ja shellid
  4. päev: Failisüsteemi kaart, Kettaruum, Õigused
  5. päev: Kasutajad, grupid ja sudo, Muutujad ja PATH, Paketihaldus, Lihtne veaotsing
  6. päev: Võrgu põhitööriistad, Failide kopeerimine ja sünkroonimine, Kauglogimine ja SSH, Veebist sisu toomine
  7. päev: grep, Teksti teisendamine, sort, uniq, wc, pr, join, Esimene shelliskript, Git, GitHub ja töövoog

Iga päeva puhul:

  • loe peatüki loogika läbi
  • proovi vähemalt pooled näited ise läbi
  • tee peatüki minitest

Millal kasutada raamatut referentsina

Kui oled juba baasi läbinud, siis ei pea enam liikuma õpitee järgi. Siis on parem kasutada peatükke probleemipõhiselt:

Peatüki täisspikker

Algaja

Eesmärk

See peatükk aitab valida, mis järjekorras lugeda. Raamatut saab kasutada ka käsiraamatuna, kuid alguses on lihtsam liikuda kindla õpitee järgi.

Õpiteed

  • Täiesti algajaloe esimesena
  • Süsteemi pildi loominepärast esimest ringi
  • Igapäevane Linuxi ja serveri kasutajakaugühendus ja failid
  • Tekst, filtrid ja automatiseeriminekäsurea jõud
  • Arendaja suundGit, Docker, build
  • Andmeteaduse stardiradafailid, vormingud, SQL

Märgendid ja kontroll

  • vajalikloe nüüd
  • soovitatavhea järgmine
  • hiljemära kiirusta
  • Pärast seda rada oskad …kontrolli edenemist