Pateikiama pamoka kuri padės jums susipažinti su dedikuoto serverio SSH terminalo komandomis, kurių dėka jūs galėsite manipuliuoti serveryje esančiais failais, aplankais bei nukreipimais.
Komandos darbams su failais
1. Kopijuojame failus:
cp - copy files and directories.
Failų kopijavimą paprasčiausia atlikti naudojant cp komandą.
Įprastai naudojama cp komandos sintaksė:
cp -parametras šaltinis tikslas
Pavyzdžiai:
Komanda Rezultatas
mv failas1 failas2 Jeigu failas2 neegzistuoja, tuomet failas1 yra pervadinamas į failas2. Jeigu failas2 egzistuoja, tuomet failas2 turinys yra pakeičiamas failas1 turiniu.
mv -i failas1 failas2 Jeigu failas2 neegzistuoja, tuomet failas1 yra pervadinamas į failas2. Jeigu failas2 egzistuoja, tuomet vartotojo yra paklausiama ar jis pageidauja perrašyti failas2 turinį;
mv failas1 failas2 failas3 dir1 Visi komandojen nurodyti failai yra perkeliami į dir1 katalogą. Jeigu dir1 katalogas neegzistuoja, tuomet mv komanda nėra įvykdoma ir yra pateikiamas klaidos pranešimas.
mv dir1 dir2 Jeigu dir2 katalogas neegzistuoja, tuomet dir1 yra pervadinamas į dir2. Jeigu dir2 egzistuoja, tuomet dir1 katalogas yra sukuriamas dir2 katalogo viduje.
2. Perkeliame failus:
mv - move (rename) files.
Failai perkeliami iš vienos direktorijos į kitą naudojant mv komandą. Taip pat mv komanda gali turėti ir kitą paskirti - failų ar katalogų pervadinimą.
Įprasta mv komandos sintaksė:
mv -parametras šaltinis tikslas
Pavyzdžiai:
Komanda Rezultatas mv failas1 failas2 Jeigu failas2 neegzistuoja, tuomet failas1 yra pervadinamas į failas2. Jeigu failas2 egzistuoja, tuomet failas2 turinys yra pakeičiamas failas1 turiniu. mv -i failas1 failas2 Jeigu failas2 neegzistuoja, tuomet failas1 yra pervadinamas į failas2. Jeigu failas2 egzistuoja, tuomet vartotojo yra paklausiama ar jis pageidauja perrašyti failas2 turinį; mv failas1 failas2 failas3 dir1 Visi komandojen nurodyti failai yra perkeliami į dir1 katalogą. Jeigu dir1 katalogas neegzistuoja, tuomet mv komanda nėra įvykdoma ir yra pateikiamas klaidos pranešimas. mv dir1 dir2 Jeigu dir2 katalogas neegzistuoja, tuomet dir1 yra pervadinamas į dir2. Jeigu dir2 egzistuoja, tuomet dir1 katalogas yra sukuriamas dir2 katalogo viduje.
3. Šaliname failus ir katalogus:
rm - remove files or directories.
Failų bei katalogų šalinimui yra naudojamas rm komanda.
Įprasta rm komandos sintaksė:
rm -parametras šalinamas_failas
Pavyzdžiai:
Komanda Rezultatas
rm failas1 failas2 Pašalinami failas1 ir failas2;
rm -i failas1 failas2 Pašalinami failas1 ir failas2, prieš pašalinimą vartotojo yra paprašoma patvirtinti operaciją;
rm -r dir1 dir2 Pašalinami dir1 ir dir2 katalogai su visu šių katalogų turiniu.
Įspėjimas: atsižvelgiant į tai, jog Linux sistemos neturi failų grąžinimo komandos, rekomenduojame atsargiai naudoti rm komandą.
rmdir - remove empty directories.
Taip pat katalogų šalinimui galima naudoti rmdir komandą:
rmdir -parametras katalogas
4. Peržiūrime failo turinį SSH konsolės lange:
Prieš vykdydami komandas išvalykite SSH konsolės langą nuo įrašų dėka komandos:
clear
Peržiūrime failą šių komandų pagalba:
cat
Rodomas tekstas su lyg SSH konsolės lango dydžiu. Ši komanda naudojama failams kuriuose turinio nėra daug. Pavyzdys: cat failas.txt
less
Rodomas tekstas puslapiuojant. Nuspaudus klavišą SPACE verčiamas kitas puslapis su tekstu. Pavyzdys: less failas.txt
head
Pateikiamos pirmos 10 eilučių failo turinio. Galimos variacijos, pavyzdžiui: head -5 failas.txt
tail
Pateikiamos paskutinės 10 eilučių failo turinio. Galimos variacijos kaip ir su head komanda, pavyzdžiui: tail -15 failas.txt
5. Ieškome informacijos failo turinyje. Informacija faile naršoma šių komandų dėka:
less
Tuomet neišeidami iš šios komandos įveskite paieškos frazę, pavyzdžiui: /serveriai . Kaip matote paieška vykdoma ženklo / dėka. Pageidaujant pereiti prie kito paieškos žodžio spauskite raidę n .
grep
Ši komanda yra standartizuota visose Linux distribucijose ir skirta failų turinio ar jų pavadinimų paieškai. Pavyzdžiai:
grep serveriai failas.txt - komanda grep pateiks eilutes kuriose yra žodis serveriai. Atminkite, ši komanda yra jautri simbolių dydžiui, t.y. atpažįsta mažąsias ir didžiąsias raides.
grep -i serveriai failas.txt - šios komandos dėka ignoruojamas simbolių dydis ir ieškoma žodžio serveriai faile failas.txt.
grep -i 'mano serveriai' failas.txt - ši komanda ieškos visos frazės faile nepaisydama simbolių dydžių.
Papildomi atributai grep komandai:
-v - pateikia eilutes kuriose nėra ieškomo žodžio ar frazės
-n - pažymi kiekvienos paieškos žodį ar frazę turinčios eilutės numerį
-c - pateikia tik eilučių skaičių kuriose yra ieškomi žodis ar frazė
6. Skaičiuojame žodžius faile. Tam pravers paprasta komanda:
wc
Pavyzdžiai:
wc -w failas.txt - pateikia žodžių skaičių faile
wc -l failas.txt - pateikia eilučių skaičių faile
Apibendrinimas:
cp failas1 failas2 - nukopijuoja failą ir pakeičia jo pavadinimą į failas2
mv failas1 failas2 - perkelia failą ir/arba jį pervadina į failas2
rm failas1 - pašalina failą
rmdir aplankas -pašalina aplanką pavadinimu "aplankas"
cat failas.txt - parodo failą
less failas.txt - pateikia puslapiuotą failo turinį
head failas.txt - pateikia pirmas 10 failo turinio eilučių
tail failas.txt - pateikia pirmas 10 failo turinio eilučių
grep 'žodis' failas.txt - ieško žodžio arba frazės faile
wc failas.txt - pateikia žodžių skaičių faile
Komandos darbams su aplankais
Pateikiama pamoka kuri padės jums susipažinti su dedikuoto serverio SSH terminalo paprasčiausiomis komandomis, kurių dėka jūs galėsite naršyti po aplankus.
1. Katalogų ir failų sąrašo peržiūra:
ls - list directory contents.
Komanda ls tai žodžio list sutrumpinimas. Įvykdžius šią komandą, pateikiamas visas katalogų ir failų sąrašas esamoje direktorijoje.
Pavyzdžiai:
Komanda Rezultatas
ls Pateikia failų sąrašą darbinėje direktorijoje;
ls /bin Pateikia failų sąrašą /bin direktorijoje (arba bet kurioje kitoje direktorijoje pagal nurodytą komandą);
ls -l Pateikia failų sąrašą darbinėje direktorijoje, ilgame formate (pateikiama daugiau informacijos);
ls -l /etc /bin Pateikia failų sąrašą /bin ir /etc direktorijose, ilgame formate;
ls -la .. Pateikia failų sąrašą įskaitant ir "paslėptus" failus, aukštesnio lygmens direktorijoje, ilgame formate.
Šie pavyzdžiai gerai atvaizduoja svarbia komandų vykdymo koncepciją. Daugumo komandų sintaksė yra ši:
komanda -parametras argumentas
Kur:
komanda - komanda kuri yra vykdoma;
-parametras - komandos veikimo pricipus keičiantys parametrai;
argumentas - vienas ar kelis objektai su kuriais yra vykdoma operacija.
Konkrečiai šiuo atveju matyti, kad ls yra pati komanda, -a ar -l yra šios komandos parametrai, bei pati komanda gali būti vykdoma siekiant atlikti operacijas su vienu ar keliais objektais.
Detalesnis ls komandos ilgo formato paaiškinimas:
Naudojant ls komandą, bei nurodant -l parametrą yra kartu su pateikiamu failų/katalogų sąrašu yra gaunama didelė dalis papildomos informacijos.
-rw-rw---- 1 user group 576 Oct 10 12:11 antras_failas.txt
drwxr-xr-x 6 user group 1024 Oct 10 12:11 web_page
-rw-rw---- 1 user group 276480 Feb 11 20:41 pirmas_failas.txt
-rw-rw---- 1 user group 5743 Oct 10 12:11 trecias_failas.txt
---------- ------- ------- -------- ------------ -------------
| | | | | |
| | | | | Failo pavadinimas
| | | | |
| | | | +--- Modifikavimo data
| | | |
| | | +------------- Dydis (baitais)
| | |
| | +----------------------- Vartotojų grupė
| |
| +-------------------------------- Vartotojas
|
+------------------------------------------ Failui priskirtos teisės
Daugiau informacijos apie ls komanda bei visus komandos galimus parametrus galima rasti komandos dokumentacijoje, kurią galima iškviesti naudojant šią komandą:
man ls
2. Katalogų kūrimas serveryje:
mkdir - make directories.
Norint sukurti aplanką UNIX serveryje,SSH konsolėje yra naudojama mkdir komanda:
mkdir <katalogo_pavadinimas>
Tam, jog peržiūrėtumėte ar tikrai buvo sukurtas pageidaujamas katalogas, įvykdome komandą:
ls
Daugiau informacijos apie mkdir komanda bei visus komandos galimus parametrus galima rasti komandos dokumentacijoje, kurią galima iškviesti naudojant šią komandą:
man mkdir
3. Naršymas po katalogus:
cd - Change the current directory to dir.
Siekiant pakeisti darbinę direktoriją yra naudojama cd komanda, po cd komandos nurodant kelią iki pageidaujamo direktorijos. Kelias iki darbinės direktorijos yra maršrutas nurodomas atšakomis, kuriuo yra pasiekiama pageidaujama darbinė direktorija. Kelias iki darbinės direktorijos gali būti nurodomas dviem būdais:
absoliučių kelių iki darbinės direktorijos;
reliatyviu keliu iki darbinės direktorijos.
Absoliutus kelias iki darbinės direktorijos prasideda šaknine (angl. root) direktorija ir seka išsišakojimo principu iki galutinio pageidaujamo failo ar katalogo.
Pavyzdžiui: Turime katalogą kuriame pagal nutylėjimą yra talpinama pradinė Apache serverio svetainė /var/www/html .
Šiuo atveju absoliutus kelias iki pageidaujamos darbinės direktorijos susideda iš šių komponentų:
/ var/ www/ html
-- ---- ---- ----
| | | |
| | | html katalogas
| | |
| | +-- www katalogas
| |
| +--------- var katalogas
|
+- šakninis (root) katalogas
Paaiškinimas: "/" (šakiniame) kataloge yra katalogas "var", šiame kataloge yra katalogas "www", o šiame kataloge yra "html" katalogas.
Įprastai naudojama cd komandos sintaksė:
komanda direktorija
Pavyzdžiai:
Komanda Rezultatas
cd Pakeičia darbinę direktoriją į "namų" direktoriją;
cd ~ Taip pat pakeičia darbinę direktoriją į "namų" direktoriją;
cd /home Pakeičia darbinę direktoriją į šakniniame kataloge esantį "home" katalogą;
cd /home/user Pakeičia darbinę direktoriją į "/home/user/";
cd / Pakeičia darbinę direktoriją į šakninį katalogą (/) (angl. root);
cd .. Pakeičia darbinę direktoriją lygiu aukščiau;
cd ../.. Pakeičia darbinę direktoriją dviem lygiais aukščiau.
Daugiau informacijos apie cd komanda bei visus komandos galimus parametrus galima rasti komandos dokumentacijoje, kurią galima iškviesti naudojant šią komandą:
man cd
pwd - print name of current/working directory
Naršant po aplankus kartais prisireikia sužinoti esamos darbinės direktorijos absoliutų kelią (). Šiuo atveju pravarti yra pwd komanda:
pwd
Rezultate yra pateikiamas esamos darbinės direktorijos absoliutus kelias. Pavyzdžiui:
/home/vartotojas/tinklalapis
Ir tuomet mums pateikiamas dabartinio aplanko kuriame esame, kelias.
Pamokos apibendrinimas:
Komanda Rezultatas
ls Pateikia failų sąrašą darbinėje direktorijoje;
mkdir <katalogo_pavadinimas> Sukuria naują katalogą;
cd <direktorija> Pakeičia darbinę direktoriją į pageidaujamą;
pwd Pateikia esamos darbinės direktorijos absoliutų kelią.
Darbas su nukreipimais
Šioje pamokoje panagrinėsime UNIX sistemų informacijos įvedimo ir išvedimo būdus.
1. Nukreipimas (Redirection)
Pamokoje #2 mes naudojome komandą cat informacijos išvedimui į terminalo langą iš failo. Dabar įvykdykite šią komandą be nurodymo į konkretų failą:
cat
Dabar parašykite keletą žodžių ir nuspauskite ENTER klavišą. Užbaigti šį veiksmą galite klavišų kombinacija: CTRL + D
Ką čia nutiko?
Jei nenurodote komandai cat jokio failo nuskaitymui, tuomet sistema priima standartinę informacijos įvestį iš klaviatūros ir nukopijuoja į SSH terminalo langą. UNIX sistemose mes galime nukreipinėti tiek įvedamą informaciją tiek ir išvedamą.
2. Išvedimo nukreipimas (Redirecting the Output)
Išvedimo nukreipimui mes naudosime simbolį ">" (be kabučių). Sukurkime failą su jame esančiu daiktų sąrašu, įvykdykite komandą SSH terminale:
cat > daiktai
tuomet įveskite keletos daiktų pavadinimus, po kiekvieno žodžio nuspauskite ENTER klavišą:
serveris serveriai internetas
Tam, jog uždarytumėte sąrašą nuspauskite CTRL + D . Ir įvykdykite komandą:
cat daiktai
Jums bus pateiktas sąrašas įvestų daiktų.
Kas čia nutiko?
Komanda cat nukreipė visą įvedamą informaciją į failą "daiktai" ir jums pateiktas failo "daiktai" išvedimas į SSH terminalo langą.
Papildome informacija faile vykdydami SSH terminale komandą:
cat >> daiktai
Papildome įrašais:
kompiuteris klaviatūra klavišas
Tam, jog uždarytumėte sąrašą nuspauskite CTRL + D .
Dabar vietoje anksčiau pridėtų 3 daiktų turėsime 6. Įsitikinkite tuo įvykdydami komandą cat daiktai .
Sukurkite dar vieną failą su turiniu ir tuomet sujunkite 2 failus į vieną:
cat daiktai daiktai2 > sarasas
Šios komandos dėka, abu failai buvo apjungti į vieną pavadinimu "sarasas". Peržiūrėkite šį failą pasitelkę komandą cat sarasas .
3. Nukreipiame įvedimą (Redirecting the Input)
Įvedimą nukreipiame dėka simbolio "<" (be kabučių). Naudojame komandą kuri surušiuos faile informaciją pagal abėcėlę arba skaičių didėjimo tvarka:
sort
Įveskite:
akmuo vanduo siena
Nuspaudus CTRL + D klavišus, pamatysite surušiuotus žodžius pagal abėcėlę.
Galite nukreipti informaciją iš failo į SSH terminalą vykdydami komandą (atsiminkime prieš tai naudotą faila "sarasas"):
sort < sarasas
Jums pateikiamas failo turinys surušiuotas pagal abėcėlę. Perkelkime surušiuotą informaciją iškart į failą:
sort <sarasas > sarasas1
Panaudokite komandą cat failo "sarasas1" peržiūrai.
4. Kanalai (Pipes)
Peržiūrėkime kas šiuo metu prisijungęs prie mūsų sistemos, vykdome komandą SSH terminale:
who
Turėtų būti pateikta informacija panaši į:
root pts/0 2012-01-11 20:39 (roman.iv.lt)
Tam, jog surušiuotumėte informaciją (jei vartotojų yra daug), reiktų nukreipti mums pateikiamus duomenis ir juos surušiuoti:
who > vartotojai sort < vartotojai
Tai šiek tiek per lėta ir turite nepamiršti pašalinti laikinąjį failą "vartotojai", todėl panaudokime šiek tiek patogesnį informacijos pateikimo variantą:
who | sort
Ši komanda pateiks jums tokius pačius rezultatus kaip ir komandos vykdytos prieš tai, tačiau tai bus atlikta greičiau ir patogiau.
Norėdami sužinoti prisijungusių vartotojų skaičių, vykdykite šią komandą (peržiūrėkite prieš tai buvusias pamokas dėl nežinomų komandų):
who | wc -l
=============
Apibendrinimas:
komanda > failas - nukreipia išvedamą informaciją į failą
komanda >> failas - papildo išvedamą informaciją faile
komanda < failas - rnukreipia įvedamą informaciją į failą
komanda1 | komanda2 - nukreipia komanda1 išėjimo informaciją į komanda2 įėjimo informaciją
cat failas1 failas2 > failas0 - sujungia failas1 ir failas2 informaciją į failas0
sort - surušiuoja duomenis
who - pateikia šiuo metu prie sistemos prisijungusius vartotojus
