Documente noi - cercetari, esee, comentariu, compunere, document
Documente categorii

Linux - Administrare si navigare in sistemul de fisiere

Linux - Administrare si navigare in sistemul de fisiere

Deplasarea prin structura de directoare


Sistemul de fisiere este, asa cum am aratat, organizat cu ajutorul directoarelor si a subdirectoarelor.


Directorul curent

$ cd /usr/bin [Enter]

$ pwd [Enter]

/usr/bin


Calea absoluta si calea relativa

Calea absoluta porneste din directorul radacina in timp ce calea relativa porneste din directorul curent.


$ cd /usr/local[Enter]

Aceasta este o cale absoluta deoarece incepe cu /.


$ pwd     [Enter]

/usr/local

$ cd bin [Enter]

Aceasta este o cale relativa deoarece porneste din directorul curent si merge in jos catre bin.


$ pwd [Enter]

/usr/local/bin


Deplasarea in directoarele anterioare

Fiecare director are doua referinte speciale pentru subdirectoare:

un punct (.) se refera la directorul curent

doua puncte (..) se refera la directorul anterior.

Aceste simboluri sunt nume efective de directoare.


$ cd .. [Enter]

$ pwd [Enter]

/usr/local



$ cd ../bin [Enter]

$ pwd [Enter]

/usr/bin


Se poate face deplasare inapoi mai mult de un nivel.


$ cd ../../var/tmp [Enter]

$ pwd [Enter]

/var/tmp

$ cd /usr/bin/../local/bin/.. [Enter]

$ pwd [Enter]

/usr/local


Referirea exacta la directorul curent

Directorul current poate fi privit ca un singur punct. In practica toate caile relative pot incepe cu prefixul ./


$ cd ./bin [Enter]

$ pwd [Enter]

/usr/local/bin


Directorul home

Fiecare utilizator are un director personal, cunoscut sub numele de home (acasa), el pastreaza toate datele ce apartin utilizatorului respective. Tastand doar cd, utilizatorul poate ajunge direct in directorul sau home.


$ cd [Enter]

$ pwd [Enter]

/home/john


Unele shell-uri inlocuiesc semnul ~ de la inceputul unei cai cu calea directorului home a utilizatorului.


$ cd ~ [Enter]

$ pwd [Enter]

/home/john


In acelasi fel, daca semnul ~ este asezat in fata unui cont de utilizator va fi inlocuit cu calea catre directorul home al utilizatorului.


$ cd ~mary [Enter]

$ pwd [Enter]

/home/mary



Inapoi la directorul home.


$ cd [Enter]


Continutul directoarelor


Pentru a lista continutul unui director se foloseste comanda ls.


$ ls /bin [Enter]

arch dd gzip netconf sleep
ashdf hostnamenetstat sort
ash.static dmesg igawknice stty
aumix-minimal dnsdomainname ipcalc nisdomainname su
awkdoexeckill ping sync
basename domainname linuxconf ps tar
bash echo lnpwdtcsh
bash2 ed loadkeysredtouch
bshegrep loginremadmin true
catex lsrm umount
chgrp false mail rmdir uname
chmod fgrep mkdirrpmuserconf
chown fsconfmknodrviusleep
consolecharsgawk mktemp rview vi
cp gawk-3.0.4 more sedview
cpio grep mountsetserialvimtutor
cshgtar mtsfxload ypdomainname
date gunzipmvsh zcat

Comanda ls /bin afiseaza continutul lui /bin/.

O afisare mult mai completa se poate obtine folosind optiunea -l (long list).


$ ls -l /bin [Enter]

-rwxr-xr-x 1 root root2612 Mar 7 11:29 arch
-rwxr-xr-x 1 root root 60592 Feb 3 20:12 ash
-rwxr-xr-x 1 root root 263064 Feb 3 20:12 ash.static
-rwxr-xr-x 1 root root9968 Feb 3 19:04 aumix-minimal
lrwxrwxrwx 1 root root4 Apr 13 23:28 awk -> gawk
-rwxr-xr-x 1 root root5756 Mar 7 12:15 basename
-rwxr-xr-x 1 root root 316848 Feb 27 18:44 bash

multe linii

-rwxr-xr-x 1 root root4320 Mar 7 12:15 true
-rwsr-xr-x 1 root root 26608 Feb 3 15:14 umount
-rwxr-xr-x 1 root root6196 Mar 7 12:15 uname
lrwxrwxrwx 1 root root 14 Apr 13 23:49 userconf -> /bin/linuxco
nf
-rwxr-xr-x 1 root root 16252 Mar 8 17:26 usleep
-rwxr-xr-x 1 root root 346352 Mar 7 18:18 vi
lrwxrwxrwx 1 root root2 Apr 14 00:00 view -> vi
-rwxr-xr-x 1 root root 362 Mar 7 18:18 vimtutor
lrwxrwxrwx 1 root root8 Apr 13 23:51 ypdomainname -> hostname
-rwxr-xr-x 3 root root 46384 Feb 15 17:04 zcat

$ cd [Enter]

$ ls [Enter]


Pentru a afisa fisierele ascunse (care incep cu un punct).


$ ls -a [Enter]

. .bash_history .enlightenment .mc
.. .bash_logout.gnome.tcshrc
.ICEauthority .bash_profile .gnome-desktop .xsession-errors
.Xauthority .bashrc .gnome-help-browser
.Xdefaults .cshrc.gnome_private

Crearea fisierelor

Exista modalitati diferite de a crea un fisier. Cel mai simplu este sa creezi un fisier gol folosind comanda touch. Mai intai se face deplasarea in directorul home, ce mai bun "loc de joaca".


$ cd [Enter]

$ touch myfile [Enter]

$ ls -l myfile [Enter]

-rw-rw-r-- 1 john john 0 Dec 23 10:49 myfile

Fisierul a fost creat..


Se poate folosi si comanda cat:


$ cat > myfile2 [Enter]

there are better ways to write [Enter]

text.[Enter]

This is a one-way writing. [Enter]

[Ctrl+d]

$ cat myfile2 [Enter]


Copierea fisierelor


$ cp myfile2 myfile3 [Enter]


Copierea unui grup este posibila doar daca ultimul fisier este un director existent.


$ cp myfile myfile2 myfile3 /tmp [Enter]

$ cp myfile* /tmp [Enter]

Stergerea fisierelor

Atentie atunci cand stergeti ceva si sunteti administrator!


$ rm myfile myfile2 [Enter]

Nu exista nici o modalitate pentru a recupera fisierele sterse.

Puteti utiliza metacaracterele: * si ?.


$ ls myfile* [Enter]

myfile3

$ rm myfile* [Enter]


Crearea directoarelor

$ cd [Enter]

$ mkdir mydir [Enter]


Sa verificam cu ls.


$ ls -l [Enter]


drwxr-xr-x8 john john  1024 Dec 23  12:11 mydir


Caracterul d de la inceputul sirului ne spune ca fisierul este un director.


Copierea directoarelor

Comanda cp cu optiunea -r sau -R.


$ cp -r mydir mydir2[Enter]


Stergerea directoarelor

Se pot sterge directoare goale utilizand rmdir.


$ rmdir mydir2[Enter]


Iata insa ceva mai complex.


$ mkdir carbon [Enter]

$ mkdir carbon/hydrogen [Enter]

$ mkdir carbon/oxygen [Enter]

$ mkdir carbon/hydrogen/helium [Enter]

$ rmdir carbon [Enter]

rmdir: carbon: Directory not empty

$ rm -r carbon [Enter]



Mutarea si redenumirea

In mediul Unix redenumirea si mutarea unui fisier inseamna acelasi lucru.

Comanda utilizata este mv.


$ touch white[Enter]

$ touch green[Enter]

$ mkdir purple[Enter]


Sa verificam:

$ ls -l[Enter]


-rw-rw-r--1johnjohn  0 Dec 25 12:46 white

-rw-rw-r--1johnjohn  0 Dec 25 12:46 green

drwxrwxr-x  2johnjohn  1024 Dec 25 12:46 purple


Sa redenumim fisierul white si sa-l facem brown.


$ mv white brown[Enter]

$ ls -l[Enter]


-rw-rw-r--1  john john 0 Dec 25 12:46  brown



Pentru a muta mai multe fisiere odata destinatia trebuie sa fie un director.


$ mv brown green purple [Enter]

$ ls -l purple [Enter]

-rw-rw-r-- 1 john john 0 Dec 25 12:46 green

-rw-rw-r-- 1 john john 0 Dec 25 12:46 brown

$ mv purple /tmp [Enter]

Realizarea legaturilor

In locul copierii unui fisier s-ar putea sa dorim sa cream o referinta catre acesta. Exista doua tipuri de legaturi care pot fi create: hard link-uri si soft link-uri. Comanda pentru o legatura soft este ln cu optiunea -s.


Mai intai cream mediul.


$ touch one[Enter]

$ touch two[Enter]

$ mkdir three[Enter]


Verificam..


$ ls -l [Enter]


-rw-rw-r--1 john john  0 Dec 25 12:46  two

drwxrwxr-x  2 john john  1024 Dec 25 12:46  three

-rw-rw-r--1 john john0 Dec 25 12:46  one

$ ln -s one one.bis [Enter]

$ ls -l [Enter]


lrwxrwxrwx  1 johnjohn  3 Dec 25 12:47  one.bis -> one


La fel este si pentru directoare.


$ ln -s /tmp miatemp [Enter]

$ ln -s /home/john/one* /home/john/two three [Enter]

$ ls -l three [Enter]

lrwxrwxrwx  1johnjohn15 Dec 25 15:21  two -> /home/john/two

lrwxrwxrwx  1johnjohn15 Dec 25 15:21  one -> /home/john/one

lrwxrwxrwx  1johnjohn19 Dec 25 15:21  one.bis -> /home/john/one.bis