On aeg arutada teist punkti (Terminal) kirjast Kuidas alustada programmeerimist Ruby's 7 sammuga. Ilma pikema jututa kutsun teid üles lugema sisu ja jälgima mõningaid praktilisi harjutusi, mille olen teile ette valmistanud. Alustame!
Terminal - teooria
Terminal on iga operatsioonisüsteemi põhiline tööriist, mida nimetatakse ka konsooliks või käsureaks. Iga kord, kui kuulete ühte neist terminitest, teate, et tegemist on sellega. See võimaldab suhtlemist süsteemi shell'iga, näiteks bassiga (Ubuntu vaikimisi shell). Shell toimib vahendajana operatsioonisüsteemi või rakenduste ja kasutaja vahel. Lihtsustatult öeldes võimaldab konsool anda süsteemile käske. Pole tähtis, millises keeles sa programmeerid - mida varem sa selle tööriista omandad, seda parem. Terminali kasutatakse teie masinasse programmide installimiseks/käivitamiseks, arvuti ressursside haldamiseks, kataloogides navigeerimiseks, failide loomiseks või eelnevalt ettevalmistatud skriptide käivitamiseks. Need oskused on vajalikud serveri haldamisel, millel puudub graafiline kasutajaliides (GUI).
Terminali avamise klahvikombinatsioon on ctrl + alt + t.
Paljud inimesed püüavad käsurea õppimist edasi lükata, otsides kena graafilise kasutajaliidesega programmide versioone. Kui aga soovite alustada seiklust programmeerimisega, on terminal õppimise asendamatu element, seega on aeg sõbraks saada. Algus võib olla raske, kuid ärge muretsege.
Terminal - praktika
Ülaltoodud pildil on meil juba avatud Ubuntu terminal, kus on näha:
damian@rubydev:~$
Esimene osa, enne koolonit, ei ole midagi muud kui kasutajanimi, mille valisime Ubuntu installimisel, ja meie arvuti nimi. Kuid tilde ~ tähendab kodukataloogi. Viimane märk $ on niinimetatud "prompt". Pärast seda saab käske sisestada.
Kus ma olen?
pwd (Print Working Directory) - see tagastab alati tee sinna, kus te parajasti olete. Kui te eksite, saate alati kasutada funktsiooni pwd käsk.
Siinkohal tasub märkida, et kohe pärast konsooli käivitamist olete alati oma kodukataloogis, st. / home / USER_NAME, kus USER_NAME tähendab teie kasutajanime.
Näita mulle, mis sul on!
ls (List) - see on üks kõige sagedamini kasutatavatest käskudest, et kuvada selle kataloogi sisu, milles te parajasti viibite.
Käsud võivad võtta ka argumente (valikuid), mis muudavad teie käskude käitumist mingil viisil. Neid võib kirjutada koos või eraldi, nt:
damian@rubydev:~$ ls -la
või:
damian@rubydev:~$ ls -l -a
-l on valik, mis prindib failid ja kataloogid üksikasjaliku informatsiooniga nimekirja kujul, samas kui -a või -- kõik prindib ka varjatud failid (st failid, mille nimed algavad punktiga).
Edastatud valikute ees on tavaliselt - või --. Teine kasulik trikk on sisestada tee kataloogi, mille sisu soovite kontrollida kohe pärast ls või pärast läbitud valikuid (kui te neid kasutate). Sel viisil teete seda ilma oma praegust asukohta muutmata.
Sel juhul saime teada, millised failid meil on olemas Dokumendid kataloogi ilma kodukataloogist liikumata.
Lähme teele!
On aeg oma süsteemi veidi uurida ja õppida selles navigeerima. Me kasutame cd (muutke kataloogi) käsk, et liikuda.
Kui soovite minna Dokumendid kataloogi oma kodukataloogist, näeb käsk välja selline: cd Dokumendid. Et veenduda, et olete õiges kohas, võite kontrollida seda juba teadaoleva pwd käsk:
Kui soovite tagasi minna, saate kasutada cd .., kuid pidage meeles, et .. viib teid tagasi vanemkataloogi, mitte sinna, kust te käsu sisestasite. Võib-olla illustreerib see ekraan seda probleemi paremini:
Samuti tasub teada mõningaid otseteid, mis aitavad teil tõhusamalt töötada. Veebileht cd või cd ~ viib teid otse kodukataloogi, ükskõik kust teie süsteemis.
damian@rubydev:~/Pulpit/Praca$ cd
damian@rubydev:~$ pwd
Valige /, kui teil on vaja pääseda juurkataloogi, nn "root". See on süsteemi põhikataloog, mis sisaldab katalooge konfiguratsioonifailide, installeeritud rakenduste ja kasutajakataloogidega (sealhulgas teie kodukataloogi).
damian@rubydev:~$ cd /
damian@rubydev:/$ pwd
/
Teine asi, mis hõlbustab teie tööd, on TAB-nupu kasutamine. Te ei pea iga kord sisestama selle kataloogi täisnime, kuhu soovite minna, ega isegi mäletama selle täisnime. Sisestades kataloogi esimese tähe ja vajutades TAB-klahvi, pakub terminal välja olemasolevad võimalused või täidab käsu kohe, kui on ainult üks võimalus. Proovime seda välja:
damian@rubydev:/$ cd P[tab]
Pobrane/ Publiczny/ Pulpit/
damian@rubydev:/$ cd P
damian@rubydev:~$ cd D[tab]
damian@rubydev:/$ cd Dokumenty/
Me kasutame tabulaatorit üsna sageli selles koolituses.
Abi?
Kas sa unustasid, milliseid võimalusi <codecd töötab? Võite kasutada oma süsteemi pakutavat dokumentatsioonitoetust. . mees (manuaalne) käsk kasutatakse selleks:
damian@rubydev:/$ man cd
See ei ole ainus võimalus. Võite kasutada ka --help või -h valik, mis näitab teile näiteks kiirjuhendit:
damian@rubydev:~$ ls --help
Ülesanded:
1. Uuri välja, millised on muud võimalused peale -l -a . ls käsk saab vastu võtta ja milliseid üksikasju -l valik tagastab täpselt.
2. Kuna saate kataloogides navigeerida, tutvuge oma süsteemi failistruktuuriga.
Aeg on midagi lisada ja muuta!
Uute kataloogide loomiseks, kus te oma projekte säilitate, kasutage käsku mkdir (make directory), millele järgneb teie valitud nimi.
damian@rubydev:~/Pulpit$ mkdir Projekty
damian@rubydev:~/Pulpit$ ls
Praca Projekty
Kui soovite luua faili, võite kasutada funktsiooni touch käsk:
damian@rubydev:~/Pulpit/Projekty$ touch rubydev.rb
damian@rubydev:~/Pulpit/Projekty$ ls
rubydev.rb
Kuna saate lisada uusi katalooge ja faile, saate neid ka kopeerida! Failide kopeerimiseks kasutate käsku cp (copy) käsk ja kataloogide kopeerimiseks cp lisada -r (rekursiivne) valik. Faili / kataloogi kopeerimisel võtab käsk kaks parameetrit:
faili, mida soovite kopeerida, nt varem loodud rubydev.rb faili,
koht, kuhu te kopeerite (saate anda koopiale uue nime, lisades selle sihtkoha tee lõppu).
Ma kopeerisin rubydev.rb faili vanemkataloogi, st töölaua kataloogi
Saate ka faile edastada. Proovime eelnevalt kopeeritud faili tagasi viia sellesse kataloogi, kus asute, muutes samal ajal selle nime.
Me liigutame rubydev_copy.rb faili vanemkataloogist kataloogi, kus me hetkel asume
Failide ja kataloogide teisaldamiseks kasutage käsku mv (move) käsk, mis - nagu ka cp - võtab kaks sisendinformatsiooni: mida ja kuhu liikuda.
Ebavajalik? Kustutame!
Nagu tavaliselt juhtub, on teil mõne aja pärast faile ja katalooge, mida te enam ei vaja ega kasuta. Selliste failide ja kataloogide kustutamiseks on olemas ka vastavad käsud.
rmdir (remove directory) - eemaldab parameetrina antud tühja kataloogi. Kui annate rohkemate kataloogide teekondi, kustutab see need kõik.
rm (remove) - eemaldab faili. Et kustutada kataloogi selle käsuga, me teile kataloogi -r -f võimalus. See käsk võtab vastu ainult ühe parameetri, nimelt faili või kataloogi tee. Kui soovite kustutada kõik failid kataloogis, kus te asute, võite anda üle käsu * märki parameetrina. Käsk näeb siis välja selline: rm *
damian@rubydev:~/Pulpit/Projekty$ ls rubydev_move.rb rubydev.rb
damian@rubydev:~/Pulpit/Projekty$ rm *
damian@rubydev:~/Pulpit/Projekty$ ls
damian@rubydev:~/Pulpit/Projekty$
Enne kasutamist *, veenduge (koos pwd), et olete õiges kohas, et mitte kustutada olulisi faile.
Eelnevalt nimetatud võimalused -r (rekursiivne, failide kustutamine alamkataloogides) ja -f (force, delete without confirmation, including files protected against deletion) kasutatakse koos, et eemaldada kataloog koos kogu selle sisuga. Seetõttu tuleb enne rm -rf, peate olema kindel, mida te eemaldate.
Ülesanded:
1. Kasutades man, lugege eespool käsitletud käskude dokumentatsiooni,
2. Looge kaks kataloogi: projekt_1, projekt_2
3. Looge kolm faili kataloogis project_1 (mis tahes nimed), nt. application.rb, routes.rb, puma.rb
4. Kopeerige kõik failid projekt_1 aadressile project_2ja seejärel kustutage projekt_1.
Kokkuvõte
Nagu näete, ei ole terminali käsitsemine keeruline, see nõuab vaid veidi harjutamist. Selle tõeliseks omandamiseks soovitan kasutada terminali kõigi lihtsamate toimingute jaoks. Selle õpetuse teises osas näitan teile veel mõningaid käske, mida tasub teada. Tere tulemast!