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

Spikrid

Linux/Unix/macOS käsurea kiirõpik

Siin on koos osa Osa V: Arendus ja töövood spikrid.

Osa V: Arendus ja töövood — täisspikker

Selle osa spikrid on siin koos ühel lehel. Neid saab kasutada kordamiseks, kiireks viitamiseks ja eraldi PDF-ina printimiseks.

Git, GitHub ja töövoog

Edasijõudnu

Eesmärk

Git hoiab muutuste ajalugu; erista tööpuud, stage'i ja commit'i ning vaata diff enne üle.

Põhikujud

  • git statusvaata seis
  • git diffmuutused tööpuus
  • git diff --cachedmuutused stage'is
  • git add fail.txtpane stage'i
  • git commit -m '...'tee commit
  • git switch -c parandusloo haru
  • git pull --ff-onlyuuenda puhtalt
  • git push -u origin parandussaada haru
  • git restore --staged fail.txtvõta stage'ist

Olulisemad lipud, märgid ja kiirnupud

  • HEADpraegune tipp
  • mainpõhirida
  • originkaugrepo
  • stagejärgmine commit

Pythoni venv ja eraldatud keskkonnad

Edasijõudnu

Eesmärk

venv hoiab ühe projekti Pythoni paketid eraldi; kõige olulisem on, et terminal, pip ja IDE näeksid sama keskkonda.

Põhikujud

  • python3 -m venv .venvloo keskkond
  • source .venv/bin/activateaktiveeri shellis
  • python -m pip install -U pipuuenda pip
  • python -m pip install requestspaigalda pakett
  • python -m pip listvaata pakke
  • command -v pythonkontrolli tõlgendit
  • deactivatevälju keskkonnast

Olulised märgid

  • (.venv)aktiivne keskkond
  • .venv/projekti sees
  • python -m pipkindlam kui pip
  • Dockerterve keskkond

Dockeri alused

Edasijõudnu

Eesmärk

image on käivitusmall; konteiner on sellest tehtud töötav eksemplar; andmed püsivad ainult hostis, volume'is või Git-repos.

Põhikäsud

  • docker --versionkontrolli olemasolu
  • docker run --rm alpine echo tereohutu esimene käivitus
  • docker build -t rakendus .ehita image
  • docker run --rm rakenduskäivita image
  • docker pstöötavad konteinerid
  • docker logs -f nimijälgi logi
  • docker exec -it nimi shsisene töötavasse konteinerisse
  • docker compose up -dteenused taustale
  • docker compose downpeata komplekt

Olulisemad lipud, märgid ja kiirnupud

  • imagekäivitusmall
  • konteinertöötav eksemplar
  • Dockerfileimage'i retsept
  • compose.yamlmitu teenust
  • volumepüsiv andmesisu
  • registryimage'ite hoidla
  • --rmkustuta lühikatse konteiner pärast lõppu
  • -p 8000:8000seo hosti port konteineri pordiga
  • --mount type=bind,src="$PWD",dst=/appjaga praegune kaust konteinerisse
  • -w /appmäära konteineri töökaust
  • down -vpeatab ja kustutab ka volume'id

IDE-d ja arenduskeskkonnad

Edasijõudnu

Eesmärk

hea arenduskeskkond tähendab, et terminal, Git, interpreter ja vajadusel konteiner osutavad samale projektile, mitte eri maailmadele.

Kontrollid ja valikud

  • python3 --versionkontrolli Pythonit
  • python3 -m pip --versionkontrolli pip-i
  • git --versionkontrolli Git-i
  • docker --versionkontrolli Dockerit
  • node --versionkontrolli Node'i
  • npm --versionkontrolli npm-i

Olulised mõisted

  • interpretertegelik käivitaja
  • sisseehitatud terminalsama projektivaade
  • Remote SSHtööta kaugmasinas
  • devcontainerIDE konteineris

Andmeteaduse eelteadmised käsurea vaates

Edasijõudnu

Eesmärk

andmeteaduse stardis ei piisa ühest tööriistast; vaja on korraga failivormingute tunnetust, SQL-i mõtteviisi, programmeerimist ja statistilist mõtlemist.

Põhikujud

Põhiteljed

  • programmeeriminekorduv töö loogikaks
  • SQLküsi ja seo andmeid
  • vormingudCSV, JSON, XML
  • statistikaanna tähendus

CSV, JSON ja XML käsureal

Edasijõudnu

Eesmärk

vormingu tüüp ütleb, milline tööriist mõistab andmeid kõige loomulikumalt: tabelit, puud või märgendistruktuuri.

Põhikujud

  • head fail.csvvaata CSV algust
  • column -s, -t < fail.csvjoonda lihtne CSV
  • cut -d, -f1 fail.csvvõta üks veerg
  • python3 -m json.tool fail.jsonvorminda JSON
  • jq '.students[].name' fail.jsonvali JSON välju
  • xmllint --format fail.xmlvorminda XML

Olulised mõisted

  • CSVlihtne tabel
  • JSONobjektide puu
  • XMLmärgendipuu
  • jqJSON filtriks

Andmebaasi algus: sqlite ja Python

Edasijõudnu

Eesmärk

SQLite on sild tekstifailide ja päris andmebaasimõtte vahel: failina lihtne, SQL-i mõttes siiski relatsiooniline andmebaas.

Põhikujud

  • sqlite3 andmed.dbava või loo fail
  • sqlite3 andmed.db '.tables'vaata tabeleid
  • sqlite3 andmed.db '.schema'vaata struktuuri
  • sqlite3 andmed.db 'select * from students limit 5;'piilu ridu
  • sqlite3 andmed.db 'select city, count(*) from students group by city;'koonda read
  • sqlite3 andmed.db 'select s.name, r.score from results r join students s on s.id = r.student_id;'ühenda tabelid
  • python3 naide.pykasuta Pythonist

Olulised mõisted

  • primary keyrea unikaalne id
  • foreign keyviide teise tabelisse
  • JOINseo tabelid
  • GROUP BYkoonda read

Kompileerimine ja käivitamine: shell, Python, C, C++, Go, Rust, Java

Edasijõudnu

Eesmärk

mõni fail käivitatakse tõlgendiga otse; mõni fail kompileeritakse kõigepealt teise vormi; mõni tulemus on päris binaar

Põhikäsud

  • goGo tööriist
  • cargoRusti tööriist
  • python3käivita Python
  • cckompileeri C
  • javackompileeri Java
  • javakäivita JVM-is

Tüüpilised kujud

  • chmod +x hello.shõigused
  • python3 hello.pykäivita Python
  • cc hello.c -o hello-ckompileeri C
  • go run hello.goGo tööriist
  • go build -o hello-go hello.goGo tööriist
  • mkdir -p hello-rustloo puuduv rada

LaTeX käsurealt

Edasijõudnu

Eesmärk

LaTeX-i mõte on lihtne: lähtetekst jääb tekstifailiks, aga buildist sünnib väga täpselt juhitav PDF.

Põhikujud

  • pdflatex tere.texkompileeri PDF
  • xelatex tere.texparem Unicode tugi
  • latexmk -pdf tere.texkorda vajalikud käigud
  • latexmk -xelatex tere.texxelatex automaatselt
  • ls tere.*vaata abifaile
  • open tere.pdfava tulemus

Olulised failid

  • .texlähtefail
  • .pdftulemus
  • .auxristviidete abi
  • .logkompileerimislogi