1-DAV-202 Data Management 2024/25

Materials · Introduction · Rules · Contact
· Grades from marked homeworks are on the server in file /grades/userid.txt


Command-line basics

From MAD
Revision as of 23:41, 11 February 2023 by Brona (talk | contribs) (Created page with "==Files and folders== * Images, texts, data, etc. are stored in files * Files are grouped in folders (directories) for better organization * A folder can also contain other fo...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Files and folders

  • Images, texts, data, etc. are stored in files
  • Files are grouped in folders (directories) for better organization
  • A folder can also contain other folders, forming a tree structure

Moving around folders (ls, cd)

  • One folder is always selected as the current one; it is shown on the command line
  • The list of files and folders in the current folder can be obtained with the ls command
  • The list of files in some other folder can be obtained with the command ls other_folder
  • The command cd new_folder changes the current folder to the specified new folder
  • Notes: ls is an abbreviation of "list", cd is an abbreviation of "change directory"

Example:

  • When we login to the server, we are in the folder /home/username.
  • We then execute several commands listed below
  • Using cd command, we move to folder /tasks/perl/ (computer does nto print anything, only cnages the current folder).

počítač nič nevypíše, iba zmení aktuálny adresár) a skúsime ls. Príkaz ls vypíše obsah adresára data-ppb/: podadresáre 2010-L, DU10, DU6, events a ukazka a súbor README. Nakoniec vypíšeme obsah podadresára events, ktorý obsahuje ďalšie podadresáre 2009 a 2010.

meno@vyuka:~$ cd /projects/data-ppb/
meno@vyuka:/projects/data-ppb$ ls
2010-L  DU10  DU6  events  README  ukazka
meno@vyuka:/projects/data-ppb$ ls events
2009  2010

Absolútne a relatívne cesty

  • Absolútna cesta určuje, ako sa k danému súboru alebo adresáru dostať z koreňa
  • Napr. /projects/data-ppb/, /projects/data-ppb/README, /projects/data-ppb/events/2009/Wed_25_Nov_2009, /home/meno/ atď
  • Jednotlivé adresáre v strome sa oddeľujú lomítkom
  • Absolútna cesta začína lomítkom
  • Relatívna cesta určuje, ako sa k danému súboru dostať z aktuálneho adresára
  • Napr. ak aktuálny adresár je /projects/data-ppb/, tak relatívna cesta k /projects/data-ppb/README je len README a relatívna cesta k /projects/data-ppb/events/2009/Wed_25_Nov_2009 je events/2009/Wed_25_Nov_2009
  • Relatívna cesta nezačína lomítkom
  • Relatívna cesta môže ísť aj hore do nadadresára, pomocou ..
  • Napr. ak aktuálny adresár je /projects/data-ppb/events/2009, tak relatívna cesta ../../proteins nám dá to isté ako /projects/data-ppb/proteins

V príkazoch ls, cd a ďalších môžeme používať absolútne aj relatívne cesty.

Dôležité adresáre

  • Koreň je adresár s cestou /, počiatočný bod stromovitej štruktúry adresárov
  • Domovský adresár (home directory) /home/meno je aktuálny po prihlásení
    • Tam si ukladáme väčšinu svojich súborov, ak nie je dobrý dôvod ich uložiť inde
    • Skratka pre domovsky adresár je ~, napr. cd ~ vás tam presunie

Hviezdičková konvencia

  • Príkaz ls namiesto všetkých súborov v adresári môže vypísať len tie, ktoré si vyberieme
  • Všetky súbory v aktuálnom adresári začínajúce písmenom x vypíšeme pomocou ls x*
  • Všetky súbory obsahujúce písmeno x hocikde v mene vypíšeme pomocou ls *x*

Prezeranie obsahu súboru (less)

  • less subor
  • Vypíše súbor na obrazovku, môžeme v ňom listovať pomocou medzery alebo Page up a Page down, vyskočíme pomocou q (ako quit), ďalšie klávesy sa dozviete po stlačení h (help)

Kopírovanie súborov (cp)

  • cp odkiaľ kam
  • Skopíruje súbor odkiaľ na miesto kam
  • Môžeme použiť absolútne alebo relatívne cesty.
  • Cieľové miesto kam môže byť adresár alebo celé meno súboru

Príklad: ak aktuálny adresár je /projects/data-ppb/, nasledujúce tri príkazy všetky kopírujú súbor README do poadresára events:

# relatívne cesty
cp README events/
# absolútne cesty
cp /projects/data-ppb/README /projects/data-ppb/events/
# celé meno súboru 
cp README events/README

# tento príkaz kopíruje do /projects/data-ppb/events/README2
cp README events/README2
# ak sa presunieme do adresára events, môžeme kopírovať súbor do aktuálneho adresára .
cd events
cp ../README .

Kopírovanie súborov zo servera/na server (scp)

  • Kríženec medzi ssh a cp (Secure CoPy)
  • Na server (spustite na vašom linuxovom počítači napr. v učebni): scp subor meno@vyuka.compbio.fmph.uniba.sk:nove_meno_suboru
  • Zo servera: scp meno@vyuka.compbio.fmph.uniba.sk:subor nove_meno_suboru
  • Ak chcete kopírovať súbory medzi serverom a Windowsovým počítačom, nainštalujte si program WinSCP
#skopíruje súbor README2 do adresára /projects/data-ppb/ na serveri
scp README2 hrasko37@vyuka.compbio.fmph.uniba.sk:/projects/data-ppb/

#skopíruje súbor README2 do domovského adresára užívateľa hrasko37 na serveri
scp README2 hrasko37@vyuka.compbio.fmph.uniba.sk:

#skopíruje súbor README2 do domovského adresára užívateľa hrasko37 pod menom README3
scp README2 hrasko37@vyuka.compbio.fmph.uniba.sk:README3

#skopíruje súbor README2 z domovského adresára užívateľa hrasko37 na serveri do aktuálneho adresára
scp hrasko37@vyuka.compbio.fmph.uniba.sk:README2 .

Poznámky

Upozornenie: dvakrát meraj, raz rež

  • Príkazový riadok spraví, čo napíšete, nepýta sa, či to myslíte naozaj
  • Príkazy cp a scp môžu prepísať už existujúce súbory
  • Neexistuje undo
  • Preto si vždy dobre premyslite, čo chcete spraviť a skontrolujte príkaz pred tým, ako dáte Enter

Zjednodušenie práce

Užitočné pomôcky na príkazovom riadku:

  • kláves Tab
    • ak je len jeden súbor alebo adresár, ktorý pasuje na rozpísaný začiatok slova, doplní ho automaticky
    • ak je súborov alebo adresárov viac, doplní, čo majú spoločné,po opakovanom stlačení ponúkne možnosti
  • šípky hore/dole
    • prechádzanie históriou spustených príkazov
  • copy&paste myšou
    • ľavým tlačidlom a ťahaním po texte označíme
    • kliknutím stredného tlačidla (kolieska) vložíme kam potrebujeme
    • ak nemáme stredné tlačidlo, klikneme naraz pravým aj ľavým

Ďalšie materiály k linuxu