Capitolul Introducere & Instalare Capitolul structura Linux Capitolul Comenzi si Editoare


Capitolul 4 – Comenzi si Editoare



Yüklə 0,94 Mb.
səhifə8/23
tarix28.08.2018
ölçüsü0,94 Mb.
#75662
1   ...   4   5   6   7   8   9   10   11   ...   23

Capitolul 4 – Comenzi si Editoare


4.1   Editorul VI
4.2   Comenzi de baza
4.3   Regular Expressions
4.4   Comenzile find si grep

Editorul VI


In Unix/Linux exista mai multe editoare de text acestea impartindu-se in editoare grafice ( geditkate ) si editoare care ruleaza in consola ( vi, vim, emacs, joe, pico, nano etc).
Editorul omniprezent pe orice sistem Unix/Linux este VI (Visual Editor).
Acesta este extrem de flexibil, complex si plin de optiuni.

Nota

http://www.invata-online.ro/img/course/note-symbol.gif


VIM (VI Improved) reprezinta o varianta imbunatatita a lui VI care ofera multe facilitati suplimentare si este de recomandat sa fie folosit atunci cand se poate. Toate regulile din VI raman valabile. In Ubuntu VIM nu este instalat default. Trebuie rulata comanda: sudo apt-get install vim

Se caracterizeaza prin 3 modalitati de operare:



1. Command Mode

In momentul in care se deschide VI suntem introdusi in "command mode". Se foloseste pentru a accesa celelalte moduri, pentru a vizualiza si edita fisierul curent, copy/paste, search etc.


Pentru a schimba intre celelalte 2 moduri de operare ( Insert Mode si Last Line Mode) trebuie sa trecem prin Command Mode. Se foloseste tasta ESC. 

Modul comanda se foloseste pentru a sterge un caracter, un cuvant, un grup de cuvinte sau litere precum si pentru a inlocui un text.

In modul command ne gasim dupa deschiderea unui fisier ( Exemplu: vim /etc/passwd) sau din celelalte moduri apasand tasta ESC.
In timp ce ne aflam in modul comanda avem urmatoarele optiuni:
r - replace a char
x - sterge caracterul de sub cursor.
cw - change word - sterge cuvantul incepand cu litera de unde este pozitionat cursorul si ne introduce in Insert Mode.
dd - sterge o linie (de fapt efectul este de cut, putem face paste ulterior)
7dd - sterge 7 linii
dw - sterge cuvantul de sub cursor incepand cu caracterul care se gaseste sub cursor.
u - undo
G - se duce la sfarsitul fisierului
$ - muta cursorul la sfarsitul liniei
0(zero) sau ^(carret) - muta cursorul la inceputul unei linii
:x - muta cursorul pe linia nr. x. 
Exemplu: :37 - muta pe linia 37

shift+v, alt+v si ctrl+v ne introduce intr-un sub mod in care putem selecta vizual un bloc de text sau mai multe randuri (valabil doar in VIM).
y(yank) - echivalentul lui copy din Windows
p(paste) 
/(slash) - search forward.
? - search backward
n - urmatoarea aparitie 
N - aparitia anterioara
ZZ (z mare, z mare) - salvare cu iesiere din fisier

2. Insert Mode
Este folosit pentru a insera text in documentul curent.

Pentru a intra in Insert Mode din Command Mode se pot folosi urmatoarele taste:


i - insereaza inaintea caracterului de sub cursor
I - insereaza la inceputul unui rand
a - insereaza dupa caracterul de sub cursor
A - insereaza la sfarsitul randului
o - insereaza pe randul urmator.

3. Last Line Mode
Se foloseste pentru a salva documentul curent, pentru revenire la varianta de la ultima salvare a fisierului sau pentru a executa diferite comenzi (text substitution, afisarea nr. de linii etc).
Pentru a intra in acest mod se foloseste : (doua puncte) din Command mode. 

In Last Line mode utilizatorul are la dispozitie urmatoarele comenzi:


wq - write and quit
q! - quit fara salvare
w! - salvare fara quit
e! - undo
set nu - numeroteaza liniile

Editorul VIM foloseste fisierul de configurare ~/.vimrc si/sau ~/.exrc. Acestea pot fi modificate pentru customizarea editorului astfel incat setarile sa ramana permanente. Daca aceste fisiere nu exista se pot crea (fosind touch/vim), iar VIM le va folosi.










Resurse:

 VIM Tutorial - PDF

 O'Reilly - Learning the VI Editor, 6th Edition

 YouTube - Basic VIM Tutorial


Comenzi de baza


In Linux exista peste 400 de comenzi folosite pentru managementul sistemului. Nu toate sunt insa utilizate pentru taskurile zilnice ale unui administrator de sistem. Mai jos ne-am propus sa explicam cele mai folosite comenzi din Linux. O intelegere buna a acestora este extrem de importanta pentru a putea avansa in studiul unui sistem de operare Linux.

Important

Cunoasterea tuturor comenzilor si a tuturor optiunilor acestora este imposibila chiar si pentru cei mai experimentati admini. Documentatia comenzilor se gaseste in man page-uri care trebuie folosite intesiv in momentul in care se doreste aflarea efectului unei comenzi sau a unei optiuni a comenzii.


Exemplu: man ls
pwd - Print Working Directory

Afiseaza directorul curent. Nu are optiuni sau argumente. 



cd - Change Directory

Schimba directorul curent.



cd NEW_DIRECTORY - mutare in directorul NEW_DIRECTORY
.. = directorul parinte
. = directorul curent
~ = home directory
Exemplu

http://www.invata-online.ro/img/course/note-symbol.gif


1. Directorul curent se schimba cu /etc/
cd /etc 

2. Viitorul director curent va fi parintele directorului curent actual
cd ..

3. Directorul curent devine Home Directory al userului care executa comanda. Daca se ruleaza comanda cd fara argumente se schimba directorul curent cu Home Directory. Cele 2 comenzi sunt echivalente
cd ~
cd 

4. Directorul curent devine ultimul director in care ne-am aflat
cd - = mutare in directorul anterior



mkdir - Make Directory

mkdir OPTIONS DIRECTORY 

Optiuni:
-p = creaza atat directorul cat si directoarele parinte daca acestea nu exista. Daca directorul parinte nu exista comandamkdir returneaza eroare daca se foloseste fara optiunea -p
-v = verbose
Exemplu: mkdir /home/stud/documents/privat 

ls - List

Listeaza continut director sau listare informatii despre fisier. 



ls OPTIONS FILE/DIRECTORY 
Detalii 

mv - Move

Muta sau redenumeste (in functie de context) fisiere si directoare.


In Linux nu exista comenzi diferite pentru mutare respectiv redenumire.

mv OPTIONS SOURCE DESTINATION 

Optiuni:
-f = force (do not prompt before overwriting)
-i = interactive (prompt before overwriting)
-u = update (muta doar daca sursa este mai noua ca destinatia sau destinatia lipseste)
-v = verbose

Exemplu

http://www.invata-online.ro/img/course/note-symbol.gif


1. Muta fisierul file1.txt din /home/paul/ in /home/dan/ sub numele de file2.txt
mv /home/paul/file1.txt /home/dan/file2.txt 

2. Redenumire director
mv /home/dan /home/andrei



cp - Copy

Copiaza fisiere sau directoare din sursa in destinatie. 



cp OPTIONS SOURCE DESTINATION

Optiuni:
-i = interactiv
-p = pastreaza owner, group si permisiuni pt. fisierul destinatie creat
-r = copiaza recursiv (obligatoriu pentru directoare)
-f = force (do not prompt before overwriting)


rm - Remove

Sterge fisiere sau directoare.



rm OPTIONS FILES/DIRECTORIES 

Optiuni:
-i = interactiv
-r = sterge recursiv, obligatoriu pentru directoare
-f = force 
Nota

http://www.invata-online.ro/img/course/note-symbol.gif


Comanda rm (ca si comenzile asemanatoare din Windows) nu sterge efectiv informatia reprezentata de fisier ci doar marcheaza inode-ul si blocurile de date catre care acesta pointeaza ca fiind "libere pentru a fi utilizate din nou". Folosind programe speciale informatia stearsa poate fi recuperata FOARTE USOR.
Programe cunoscute si folosite pentru investigarea unui sistem dupa compromiterea sa de catre un Black Hat Hacker si care contin inclusiv utilitare pentru recuperarea informatiei sterse accidental sau intentionat sunt The Sleuth Kit, Autopsy Browser si The Coroner's Toolkit (TCT).

Important

Un fisier sau director sters folosind comanda rm nu mai poate fi recuperat in mod standard din Recycle Bin. In Linux pentru fisierele si directoarele sterse folosind cumanda rm nu exista Recycle Bin. Un fisier odata sters nu mai poate fi recuperat in mod conventional.



shred

Sterge securizat fisiere. 



shred OPTIONS FILES 

Exemplu

http://www.invata-online.ro/img/course/note-symbol.gif


Suprascrie fisierul a.txt cu date aleatoare de 100 ori (optiunea -n) dupa care il sterge.
shred -vu -n 100 a.txt



touch

Creaza un fisier gol daca FILE nu exista sau reseteaza atime, mtime si ctime pentru FILE daca acesta exista. 



touch OPTIONS FILE 
Detalii 

cat

Concateneaza si/sau afiseaza continutul unui fisier 



cat OPTIONS FILES 

Optiuni:
-b = no. of nonblank lines
-n = no. of output lines

Exemplu

http://www.invata-online.ro/img/course/note-symbol.gif


1. Afiseaza fisierul /etc/passwd la consola
cat /etc/passwd 

2. Concateneaza fisierele /etc/passwd si /etc/shadow in fisierul /home/dan/passwd-shadow pe care il si creaza daca nu exista sau il suprascrie daca exista.
cat /etc/passwd /etc/shadow > /home/dan/passwd-shadow



more & less

Programe de paginare. 



more FILE
less FILE 
Detalii 

head

Afiseaza primele linii (default 10) dintr-un fisier 



head OPTIONS FILE

Optiuni:
-n nr = afiseaza primele 'nr' linii 

tail

Afiseaza ultimele linii (default 10) dintr-un fisier 



tail OPTIONS FILE 

Optiuni:
-n nr = afiseaza ultimele 'nr' linii
-n +nr = afiseaza incepand cu linia 'nr'
-f = afiseaza in timp real ultimele linii dintr-un fisier. tail -f fisier este cea mai importanta comanda pentru urmarirea modificarii in timp real a logurilor. 

Exemplu

http://www.invata-online.ro/img/course/note-symbol.gif


1. Afiseaza fisierul /etc/passwd incepand cu linia nr. 5 si pana la final
tail -n +5 /etc/passwd
tail -n 5 /var/log/auth.log

3. Afiseaza in timp real ultimele 10 linii din fisierul cu loguri /var/log/auth.log
tail -f /var/log/auth.log



strings

Afiseaza caracterele printabile/ascii dintr-un fisier binar.



strings FILE 

Exemplu: strings /bin/ls 

wc

Afiseaza nr. de randuri, caractere sau cuvinte dintr-un fisier



wc OPTIONS FILE 

Optiuni:
-l = nr. de linii
-w = nr de cuvinte
-m = nr de caractere 
Exemplu: 
1. Afiseaza nr. de useri din sistem
wc -l /etc/passwd 

2. Afiseaza nr. userilor logati in sistem
who | wc -l 

file

Determina tipul fisierului



file OPTIONS FILE

Optiuni: 
-p = preserve atime 

du - disk usage

Afiseaza marimea unui fisier sau director



du OPTIONS FILE 

Optiuni:
-k = adauga prefixul KB 
-s = sum (summarize)
-h = human readable format
Exemplu: du -ksh /etc/ 

df - disk free

Afiseaza spatiul total, spatiul ocupat si spatiul liber de pe fiecare partitie de pe hard disk.



df OPTIONS

Optiuni:
-h = human readable
-i = print used/free inodes
Exemplu: df -hi 

cmp - compare

Compararea a 2 fisiere fara afisarea diferentelor dintre ele. 



cmp FILE1 FILE2 

diff

Compara FILE1 si FILE2 dupa continut si afiseaza diferentele 



diff OPTIONS FILE1 FILE2

Optiuni:
-i = case insensitive
-B = ignora liniile goale (blank lines)
-w = ignora spatiile libere (white spaces)
-c = comparare detaliata
-y = afiseaza pe coloane 

stat - statistics

Afiseaza informatii despre FILE (size, type, atime, mtime, ctime) 



stat FILE 

history

Afiseaza comenzile din history



history OPTIONS

Optiuni:
-c = sterge comenzile din history
-d nr = sterge linia nr. din history 

which

Cauta si afiseaza calea catre o comanda



which 

whereis

Cauta si afiseaza calea catre o comanda, man page sau sursa



whereis 

uptime

Afiseaza timpul de cand hostul este pornit precum si load-ul din ultimele 1,5 si 15 minute



uptime 

date

Afiseaza/modifica data 



date 

free

Afiseaza informatii despre RAM si SWAP 



free OPTIONS

Optiuni:
-t = total
-m = MB
-k = KB


uname

Afiseaza informatii despre sistem (kernel version etc)



uname OPTIONS

Optiuni:
-a = all info 
-s = kernel name
-r = kernel release
-v = kernel version
-m = machine
-p = processor
-o = operating system
Exemplu: uname -a
uname -s -r -v -m 

vmstat - virtual memory statistics

Afiseaza informatii despre despre memorie, cpu, I/O blocks etc



vmstat

Informatiile afisate sunt documentate in man page-ul comenzii. 



ifconfig - Interface configuration

Afiseaza informatii despre interfetele de retea. Se foloseste si pentru a seta caracteristicile interfetelor de retea (IP, Network Mask, MAC etc). 



ifconfig OPTIONS INTERFACE 

Exemplu

http://www.invata-online.ro/img/course/note-symbol.gif


1. Afiseaza informatii despre toate interfetele (active sau inactive)
ifconfig -a 

2. Afiseaza informatii doar despre interfetele active
ifconfig 

3. Afiseaza informatii doar despre interfata eth0
ifconfig eth0

Nota

http://www.invata-online.ro/img/course/note-symbol.gif


Pentru exemple referitoare la modul in care se pot seta parametri placii de retea folosind comanda ifconfig cititi capitolul Configurare retea.



netstat

Afiseaza informatii despre porturile deschise precum si despre conexiunile existente.



netstat OPTIONS

Optiuni:
-t = porturile tcp 
-u = porturile udp
-p = afiseaza numele programului(client sau server) care foloseste portul
-a = all
-n = afisare numerica
Exemplu: netstat -tupan 

lshw

Afiseaza informatii despre hardware.


Exemplu: lshw | less 

lspci

Afiseaza informatii despre dispozitivele PCI. 



acpi -V

Afiseaza informatii despre baterie in cazul laptopurilor. 



iftop

Afiseaza informatii despre conexiunile din retea inclusiv Bandwidth. Se poate folosi si pe post de "Bandwidth Meter". In cazul in care nu este instalat default trebuie rulat: sudo apt-get install iftop


Exemplu: iftop -i wlan0 -B -P -n 

wodim -prcap

Afiseaza informatii despre capabilitatile CD/DVD Rom. 



Nota

http://www.invata-online.ro/img/course/note-symbol.gif


Multe exemple din aceasta pagina au folosit fisierul /etc/passwd. Acesta este unul dintre cele mai importante fisiere din sistem in care se gasesc utilizatorii sistemului, cate unul pe fiecare linie, impreuna cu multe informatii despre acestia.



Yüklə 0,94 Mb.

Dostları ilə paylaş:
1   ...   4   5   6   7   8   9   10   11   ...   23




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©muhaz.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin